From 97804ca4ac315171846ba5800bf5097fa4612e8b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakub=20Ma=C5=84czak?= <56172798+jakubmanczak@users.noreply.github.com> Date: Sat, 21 Aug 2021 16:22:55 +0200 Subject: [PATCH 01/23] delete and start over for canary branch --- commands/admin.js | 93 -- commands/ping.js | 19 - commands/regulamin.js | 63 -- commands/urusai.js | 29 - commands/urusai.mp3 | Bin 26616 -> 0 bytes config.json | 5 - index.js | 187 ---- package-lock.json | 2394 ----------------------------------------- package.json | 31 - 9 files changed, 2821 deletions(-) delete mode 100644 commands/admin.js delete mode 100644 commands/ping.js delete mode 100644 commands/regulamin.js delete mode 100644 commands/urusai.js delete mode 100644 commands/urusai.mp3 delete mode 100644 config.json delete mode 100644 index.js delete mode 100644 package-lock.json delete mode 100644 package.json diff --git a/commands/admin.js b/commands/admin.js deleted file mode 100644 index bfb3dc0..0000000 --- a/commands/admin.js +++ /dev/null @@ -1,93 +0,0 @@ -const { Message } = require('discord.js'); - -module.exports = { - name: 'admin', - description: 'Ukryte rzeczy dla adminów. Tajne sprawy.', - args: false, - guildOnly: true, - execute(msg, args, Discord, config, client) { - if (msg.member.roles.cache.find((role) => role.name == 'moderacja')) { - msg.delete(); - switch (args[0]) { - case 'witaj': { - const witajEmbed = new Discord.MessageEmbed() - .setTitle('Witajcie w Gractwie!') - .setDescription( - 'Jesteśmy grupą ludzi, których kręcą gry. Proste, nie?\nSerwer ten miał wcześniej tematykę Team Fortressową.' - ) - .setColor(config.embedColor) - .addField( - 'Zasady', - 'Zasady serwera są spisane na kanale `#regulamin`. Pamiętajcie, by tam zajrzeć.' - ) - .addField('Gractwo WWW', '`gractwo.pl`') - .addField( - 'Gractwo DISCORD', - '`gractwo.pl/discord` lub `gractwo.pl/dc` lub `discord.gg/NBXq95C`' - ) - .addField( - 'Gractwo FACEBOOK', - '`gractwo.pl/facebook` lub `gractwo.pl/fb` lub `facebook.com/groups/gractwo`' - ) - .attachFiles('./gractwo.png') - .setFooter('#witaj', 'attachment://gractwo.png') - .setTimestamp(); - msg.channel.send(witajEmbed); - break; - } - case 'rolki': { - const rolkiEmbed = new Discord.MessageEmbed() - .setTitle('Nadawanie Ról') - .setDescription( - '#rolki jest kanałem do przyznawania sobie ról.\nDostępne role: `tf2`, `liga`, `csgo`, `minecraft`, `rainbow-six`, `apex`, `genshin`.\n\nRole te służą do pingowania na poszczególnych kanałach, by zebrać ludzi chętnych do gry bądź zainteresowanych pewnym wydarzeniem.\n\nBy przydzielić sobie rolę, po prostu wpisz ją na czacie! Jest on czyszczony zaraz po. Aby pozbyć się roli, wystarczy wpisać jej nazwę jeszcze raz.' - ) - .setColor(config.embedColor) - .attachFiles('./gractwo.png') - .setFooter('#rolki', 'attachment://gractwo.png') - .setTimestamp(); - msg.channel.send(rolkiEmbed); - break; - } - case 'botannouncement': { - const botAnnouncementEmbed = new Discord.MessageEmbed() - .setTitle('Hej,') - .setDescription( - 'W ciągu ostatnich trzech dni zostałem stworzony ja - bot Gractwa.' - ) - .setColor(config.embedColor) - .addField( - 'Moja funkcja', - 'Zastąpiłem wiadomości na kanałach `#witaj` i `#regulamin`, serwisuję również `#rolki`.' - ) - .addField( - 'Zmiany', - `Wraz z moim przybyciem zostało uproszczone nasze logo, w regulaminie czekają na Was dwie nowe zasady (niezbyt restrykcyjne ;3), forma serwera została uproszczona.` - ) - .addField( - 'Rolki? Co?', - `Rolki To!\n\nMogą one być wykorzystywane do zbierania osób do grania/rozmów. Było to coś o co poproszono naszą administrację już dawno temu. Dziś jest to już dla Was dostępne!` - ) - .attachFiles('./gractwo.png') - .setFooter(`by j4mesen`, 'attachment://gractwo.png') - .setTimestamp(); - msg.channel.send(botAnnouncementEmbed); - break; - } - case 'riposta': { - msg.channel.send('mama twoja'); - break; - } - case 'everyone': { - msg.channel.send(`@everyone`); - break; - } - default: { - msg.reply('nie sprecyzowałeś!'); - break; - } - } - } else { - msg.reply('chyba nie masz na to wystarczających permisji.'); - } - }, -}; diff --git a/commands/ping.js b/commands/ping.js deleted file mode 100644 index b1dd0f3..0000000 --- a/commands/ping.js +++ /dev/null @@ -1,19 +0,0 @@ -module.exports = { - name: 'ping', - description: 'Pokazuje ping.', - args: false, - guildOnly: false, - execute(msg, args, Discord, config, client) { - msg.delete() - .catch(console.error); - const pingEmbed = new Discord.MessageEmbed() - .setTitle('Pong!') - .setColor(config.embedColor) - .setDescription(`Ping API wynosi ${client.ws.ping}`) - .attachFiles('./gractwo.png') - .setFooter(`Komenda wywołana przez ${msg.author.username}`, 'attachment://gractwo.png') - .setTimestamp(); - msg.channel.send(pingEmbed); - console.log(`Responded to ping request by ${msg.author.username}`); - }, -}; \ No newline at end of file diff --git a/commands/regulamin.js b/commands/regulamin.js deleted file mode 100644 index deec497..0000000 --- a/commands/regulamin.js +++ /dev/null @@ -1,63 +0,0 @@ -module.exports = { - name: 'regulamin', - description: 'Wyświetla regulamin / pojedyńcze zasady.', - args: false, - guildOnly: true, - execute(msg, args, Discord, config){ - arg0 = args[0]; - msg.delete() - .catch(console.error); - regulaminEmbedTitleArray = [ - 'Regulamin','§1 Szacunek','§2 Spam / Trolling', - '§3 Shitposting','§4 Poprawne Kanały','§5 Memy i Gify', - '§6 Reklamy','§7 Przestrzeganie Regulaminu','§8 Obcowanie z botem', - '§9 Warunki Użytkowania Discord (ToS)' - ]; - regulaminEmbedContentArray = [ - 'Regulamin naszego serwera prezentuje się następująco:', - 'Na naszym serwerze obowiązuje szacunek do innych osób podczas niesatyrycznej dyskusji.', - 'Jeżeli będziesz bezużytecznie spamować lub nieprzyjmenie się zachowywać zostaniesz zbanowany.', - 'Kanał #shitposting jest najbardziej wyluzowanym kanałem na naszym serwerze. Nie oznacza to jednak, że nie jest monitorowany. Jeżeli czujesz, że rzecz którą chcesz tam umieścić jest nadzwyczajnie kontrowersyjna, zastanów się dwa razy przed wciśnięciem Enter.', - 'Rozmowy na dany temat powinny toczyć się w kanałach do tego przeznaczonych.', - 'Memy i Gify nie są zbyt przyjemne dla oka bez kontekstu. Najlepiej jest nie postować ich, jeżeli nie pasują do prowadzonej aktualnie dyskusji.', - 'Zakaz reklam bez zezwolenia moderatora lub administratora. Pozwolenia na reklamę muszą być wydane przed jej zamieszczeniem.', - 'Przestrzeganie regulaminu jest obowiązkowe, a to że go ktoś nie przeczytał nic nie zmienia.', - 'Próby intencjonalnego łamania bota nie są mile widziane, tak jak nadużywanie go w celach spamu kanałów.', - 'Nasz serwer, jak każdy inny, musi przestrzegać zasad zapisanych w warunkach użytkowania Discorda. Przypominamy o nich, bo choć nie są zbyt restrykcyjne, nie pozwalają na kilka określonych rzeczy.' - ]; - - const num = parseInt(args[0]); - - if(num > 0 && num < regulaminEmbedTitleArray.length){ - const calyRegulaminEmbed = new Discord.MessageEmbed() - .setTitle(regulaminEmbedTitleArray[num]) - .setDescription(regulaminEmbedContentArray[num]) - .setColor(config.embedColor) - .attachFiles('./gractwo.png') - .setFooter(`Komenda wywołana przez ${msg.author.username}`, 'attachment://gractwo.png') - .setTimestamp(); - msg.channel.send(calyRegulaminEmbed); - console.log(`Responded to request for a specific rule by ${msg.author.username}`); - }else{ - const calyRegulaminEmbed = new Discord.MessageEmbed() - .setTitle(regulaminEmbedTitleArray[0]) - .setDescription(regulaminEmbedContentArray[0]) - .setColor(config.embedColor) - .attachFiles('./gractwo.png') - .setTimestamp(); - for(i = 1; i < regulaminEmbedTitleArray.length; i++){ - calyRegulaminEmbed - .addField(regulaminEmbedTitleArray[i],regulaminEmbedContentArray[i]); - } - if(args[0] == 'admin' && msg.member.roles.cache.find(role => role.name == 'Moderatorzy')){ - calyRegulaminEmbed - .setFooter(`Ostatnio zaktualizowany`, 'attachment://gractwo.png'); - }else{ - calyRegulaminEmbed - .setFooter(`Komenda wywołana przez ${msg.author.username}`, 'attachment://gractwo.png') - } - msg.channel.send(calyRegulaminEmbed); - console.log(`Responded to request for the whole ruleset by ${msg.author.username}`); - } - } -} \ No newline at end of file diff --git a/commands/urusai.js b/commands/urusai.js deleted file mode 100644 index 3438c81..0000000 --- a/commands/urusai.js +++ /dev/null @@ -1,29 +0,0 @@ -const fs = require('fs'); -module.exports = { - name: 'urusai', - description: 'Mówi jemenikowi żeby zamknął dupę (na vc).', - args: false, - guildOnly: true, - async execute(msg, args, Discord, config, client) { - if (msg.member.voice.channel) { - const connection = await msg.member.voice.channel.join(); - msg.delete() - .catch(console.error); - const jzdEmbed = new Discord.MessageEmbed() - .setTitle('Chotto matte! >w<') - .setColor(config.embedColor) - .setDescription(`Mówienie jemenikowi żeby zamknął dupę...`) - .attachFiles('./gractwo.png') - .setFooter(`Komenda wywołana przez ${msg.author.username}`, 'attachment://gractwo.png') - .setTimestamp(); - msg.channel.send(jzdEmbed); - const dispatcher = connection.play(fs.createReadStream('./commands/urusai.mp3')); - dispatcher.on('speaking', speaking => { - if (speaking === 0) { msg.member.voice.channel.leave() } - }) - } else { - msg.reply(`Najpierw musiałbyś być na kanale głosowym...`); - } - console.log(`Responded to urusai request by ${msg.author.username}`); - }, -}; \ No newline at end of file diff --git a/commands/urusai.mp3 b/commands/urusai.mp3 deleted file mode 100644 index 8f2c08177de52fdc341243dd10165f4b5962a4fe..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 26616 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 file.endsWith('.js')); - -for (const file of commandFiles) { - const command = require(`./commands/${file}`); - client.commands.set(command.name, command); -} - -client.once('ready', () => { - console.log( - '-------------------------------------\nTHE BOT IS READY TO GO.\n-------------------------------------' - ); - client.user.setActivity('.ping', { type: 'LISTENING' }); -}); - -client.on('message', (message) => { - /* OMITTING THE COMMAND HANDLER TO CATCH ANY AND ALL MESSAGES IN THE '#rolki' CHANNEL - MAKING 'tf2' A VIABLE COMMAND WITHOUT A PREFIX */ - - if (message.channel.name == 'rolki') { - if (message.author.bot) return; - - if ( - message.content == 'tf2' || - message.content == 'liga' || - message.content == 'csgo' || - message.content == 'minecraft' || - message.content == 'rainbow-six' || - message.content == 'apex' || - message.content == 'genshin' - ) { - const role = message.member.guild.roles.cache.find( - (role) => role.name == message.content - ); - if ( - message.member.roles.cache.find((role) => role.name == message.content) - ) { - message.member.roles.remove(role); - message.delete(); - console.log( - `removed ${message.author.username}'s ${message.content} role.` - ); - const removeRolesEmbed = new Discord.MessageEmbed() - .setTitle( - `Odebrano Ci rangę ${message.content}, ${message.author.username}.` - ) - .setColor(config.embedColor) - .attachFiles('./gractwo.png') - .setFooter('#rolki', 'attachment://gractwo.png') - .setTimestamp(); - message.channel - .send(removeRolesEmbed) - .then((message) => message.delete({ timeout: 3500 })) - .catch(console.error); - } else { - message.member.roles.add(role); - message.delete(); - console.log( - `added ${message.content} role to ${message.author.username}.` - ); - const addRolesEmbed = new Discord.MessageEmbed() - .setTitle( - `Przyznano Ci rangę ${message.content}, ${message.author.username}.` - ) - .setColor(config.embedColor) - .attachFiles('./gractwo.png') - .setFooter('#rolki', 'attachment://gractwo.png') - .setTimestamp(); - message.channel - .send(addRolesEmbed) - .then((message) => message.delete({ timeout: 3500 })) - .catch(console.error); - } - } else { - if ( - !message.member.roles.cache.find((role) => role.name == 'Moderatorzy') - ) { - console.log( - `${message.author.username} spammed the rolki channel with a bad message` - ); - message.delete(); - const rolkiWrongMessageEmbed = new Discord.MessageEmbed() - .setTitle(`To nie jest kanał na pisanie, ${message.author.username}`) - .setColor(config.embedColorFail) - .attachFiles('./gractwo.png') - .setFooter('#rolki', 'attachment://gractwo.png') - .setTimestamp(); - message.channel - .send(rolkiWrongMessageEmbed) - .then((message) => message.delete({ timeout: 3500 })) - .catch(console.error); - return; - } - } - } - - if (message.content.toLowerCase() === '!rank') - message.channel.send({ - files: [ - 'https://cdn.discordapp.com/attachments/281070649374670849/871103257580281876/tenor.gif', - ], - }); - - // command handler is downward from comment - - if (!message.content.startsWith(config.prefix) || message.author.bot) return; - - const args = message.content.slice(config.prefix.length).trim().split(/ +/); - const commandName = args.shift().toLowerCase(); - - if (!client.commands.has(commandName)) return; - const command = client.commands.get(commandName); - - if (command.guildOnly && message.channel.type === 'dm') { - return message.reply("I can't execute that command inside DMs!"); - } - - if (command.args && !args.length) { - return message.channel.send( - `You didn't provide any arguments, ${message.author}!` - ); - } - - try { - command.execute(message, args, Discord, config, client); - } catch (error) { - console.error(error); - message.reply('there was an error trying to execute that command.'); - } -}); - -client.login(process.env.BOT_TOKEN).then(() => getStatus()); - -// Funne API hehehehe -const http = require('http'); -const port = process.env.PORT || 3000; - -let status; - -const getStatus = () => { - let totalSeconds = process.uptime(); - let realTotalSecs = Math.floor(totalSeconds % 60); - let days = Math.floor((totalSeconds % 31536000) / 86400); - let hours = Math.floor((totalSeconds / 3600) % 24); - let mins = Math.floor((totalSeconds / 60) % 60); - let used = process.memoryUsage().heapUsed / 1024 / 1024; - - status = { - username: client.user.username, - avatar: client.user.avatarURL(), - status: client.user.presence.status, - activity: - client.user.presence.activities.length > 0 - ? `${client.user.presence.activities[0].type} ${client.user.presence.activities[0].name}` - : null, - members: client.users.cache.size, - uptime: { - days, - hours, - mins, - realTotalSecs, - }, - memory: `${Math.round(used * 100) / 100}MB`, - ping: `${Math.floor(client.ws.ping)}ms`, - node: process.version, - }; -}; - -setInterval(getStatus, 30000); - -http - .createServer(async (req, res) => { - res.statusCode = 200; - - res.write(JSON.stringify(status)); - res.end(); - }) - .listen(port, () => console.log(`Now listening on port ${port}`)); diff --git a/package-lock.json b/package-lock.json deleted file mode 100644 index 2c4fc2d..0000000 --- a/package-lock.json +++ /dev/null @@ -1,2394 +0,0 @@ -{ - "name": "gractwo-bot", - "version": "1.0.0", - "lockfileVersion": 2, - "requires": true, - "packages": { - "": { - "name": "gractwo-bot", - "version": "1.0.0", - "license": "ISC", - "dependencies": { - "@discordjs/opus": "^0.5.0", - "discord.js": "^12.5.1", - "dotenv": "^10.0.0", - "ffmpeg-static": "^4.3.0", - "request": "2.81.0", - "ytdl-core": "^4.5.0" - }, - "engines": { - "node": "14.16.0" - } - }, - "node_modules/@derhuerst/http-basic": { - "version": "8.2.1", - "resolved": "https://registry.npmjs.org/@derhuerst/http-basic/-/http-basic-8.2.1.tgz", - "integrity": "sha512-Rmn7qQQulw2sxJ8qGfZ7OuqMWuhz8V+L5xnYKMF5cXVcYqmgWqlVEAme90pF7Ya8OVhxVxLmhh0rI2k6t7ITWw==", - "dependencies": { - "caseless": "^0.12.0", - "concat-stream": "^1.6.2", - "http-response-object": "^3.0.1", - "parse-cache-control": "^1.0.1" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@discordjs/collection": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/@discordjs/collection/-/collection-0.1.6.tgz", - "integrity": "sha512-utRNxnd9kSS2qhyivo9lMlt5qgAUasH2gb7BEOn6p0efFh24gjGomHzWKMAPn2hEReOPQZCJaRKoURwRotKucQ==" - }, - "node_modules/@discordjs/form-data": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@discordjs/form-data/-/form-data-3.0.1.tgz", - "integrity": "sha512-ZfFsbgEXW71Rw/6EtBdrP5VxBJy4dthyC0tpQKGKmYFImlmmrykO14Za+BiIVduwjte0jXEBlhSKf0MWbFp9Eg==", - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/@discordjs/node-pre-gyp": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@discordjs/node-pre-gyp/-/node-pre-gyp-0.3.2.tgz", - "integrity": "sha512-NqRvPz0X+/3h+6ClElrSfvsD5XEG9ljYzXhzyo81DslVkVKzmmxX9FLs3MUr9qI7p53DG1eYru633qosrOqMyA==", - "dependencies": { - "detect-libc": "^1.0.3", - "http-proxy-agent": "^4.0.1", - "make-dir": "^3.1.0", - "node-fetch": "^2.6.1", - "nopt": "^5.0.0", - "npmlog": "^4.1.2", - "rimraf": "^3.0.2", - "semver": "^7.3.4", - "tar": "^6.1.0" - }, - "bin": { - "node-pre-gyp": "bin/node-pre-gyp" - } - }, - "node_modules/@discordjs/opus": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/@discordjs/opus/-/opus-0.5.0.tgz", - "integrity": "sha512-s3XUJ7dYV+UvYUiqkgs7sq8JKWMhQrHcwDECP2SKdxtL9h9qGa4mr0IR6XnZw+G/Sogx8c+HRS7+wEspkqk3zA==", - "hasInstallScript": true, - "dependencies": { - "@discordjs/node-pre-gyp": "^0.3.2", - "node-addon-api": "^3.1.0" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/@tootallnate/once": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", - "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", - "engines": { - "node": ">= 6" - } - }, - "node_modules/@types/node": { - "version": "10.17.56", - "resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.56.tgz", - "integrity": "sha512-LuAa6t1t0Bfw4CuSR0UITsm1hP17YL+u82kfHGrHUWdhlBtH7sa7jGY5z7glGaIj/WDYDkRtgGd+KCjCzxBW1w==" - }, - "node_modules/abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" - }, - "node_modules/abort-controller": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", - "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", - "dependencies": { - "event-target-shim": "^5.0.0" - }, - "engines": { - "node": ">=6.5" - } - }, - "node_modules/agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "dependencies": { - "debug": "4" - }, - "engines": { - "node": ">= 6.0.0" - } - }, - "node_modules/ajv": { - "version": "4.11.8", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz", - "integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=", - "dependencies": { - "co": "^4.6.0", - "json-stable-stringify": "^1.0.1" - } - }, - "node_modules/ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" - }, - "node_modules/are-we-there-yet": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", - "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", - "dependencies": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "node_modules/asn1": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", - "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", - "dependencies": { - "safer-buffer": "~2.1.0" - } - }, - "node_modules/assert-plus": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz", - "integrity": "sha1-104bh+ev/A24qttwIfP+SBAasjQ=", - "engines": { - "node": ">=0.8" - } - }, - "node_modules/asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" - }, - "node_modules/aws-sign2": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz", - "integrity": "sha1-FDQt0428yU0OW4fXY81jYSwOeU8=", - "engines": { - "node": "*" - } - }, - "node_modules/aws4": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", - "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==" - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" - }, - "node_modules/bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", - "dependencies": { - "tweetnacl": "^0.14.3" - } - }, - "node_modules/bcrypt-pbkdf/node_modules/tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" - }, - "node_modules/boom": { - "version": "2.10.1", - "resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz", - "integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=", - "deprecated": "This version has been deprecated in accordance with the hapi support policy (hapi.im/support). Please upgrade to the latest version to get the best features, bug fixes, and security patches. If you are unable to upgrade at this time, paid support is available for older versions (hapi.im/commercial).", - "dependencies": { - "hoek": "2.x.x" - }, - "engines": { - "node": ">=0.10.40" - } - }, - "node_modules/boom/node_modules/hoek": { - "version": "2.16.3", - "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz", - "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=", - "deprecated": "This version has been deprecated in accordance with the hapi support policy (hapi.im/support). Please upgrade to the latest version to get the best features, bug fixes, and security patches. If you are unable to upgrade at this time, paid support is available for older versions (hapi.im/commercial).", - "engines": { - "node": ">=0.10.40" - } - }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/buffer-from": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==" - }, - "node_modules/caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" - }, - "node_modules/chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "engines": { - "node": ">=10" - } - }, - "node_modules/co": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", - "engines": { - "iojs": ">= 1.0.0", - "node": ">= 0.12.0" - } - }, - "node_modules/code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dependencies": { - "delayed-stream": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" - }, - "node_modules/concat-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", - "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", - "engines": [ - "node >= 0.8" - ], - "dependencies": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" - } - }, - "node_modules/console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" - }, - "node_modules/core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" - }, - "node_modules/dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "dependencies": { - "assert-plus": "^1.0.0" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/dashdash/node_modules/assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "engines": { - "node": ">=0.8" - } - }, - "node_modules/debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" - }, - "node_modules/detect-libc": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", - "integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=", - "bin": { - "detect-libc": "bin/detect-libc.js" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/discord.js": { - "version": "12.5.1", - "resolved": "https://registry.npmjs.org/discord.js/-/discord.js-12.5.1.tgz", - "integrity": "sha512-VwZkVaUAIOB9mKdca0I5MefPMTQJTNg0qdgi1huF3iwsFwJ0L5s/Y69AQe+iPmjuV6j9rtKoG0Ta0n9vgEIL6w==", - "dependencies": { - "@discordjs/collection": "^0.1.6", - "@discordjs/form-data": "^3.0.1", - "abort-controller": "^3.0.0", - "node-fetch": "^2.6.1", - "prism-media": "^1.2.2", - "setimmediate": "^1.0.5", - "tweetnacl": "^1.0.3", - "ws": "^7.3.1" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/dotenv": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", - "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==", - "engines": { - "node": ">=10" - } - }, - "node_modules/ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "dependencies": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "node_modules/env-paths": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", - "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", - "engines": { - "node": ">=6" - } - }, - "node_modules/event-target-shim": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", - "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", - "engines": { - "node": ">=6" - } - }, - "node_modules/extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" - }, - "node_modules/extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "engines": [ - "node >=0.6.0" - ] - }, - "node_modules/ffmpeg-static": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ffmpeg-static/-/ffmpeg-static-4.3.0.tgz", - "integrity": "sha512-w/tXYGlOSeAkPHjypjzylaChLrG5wRzHFyB47KFRDsGyBxUJJWiq9I/39/e6r9Y4aY1gzpejTLg5Aa0aqb0XXA==", - "hasInstallScript": true, - "dependencies": { - "@derhuerst/http-basic": "^8.2.0", - "env-paths": "^2.2.0", - "https-proxy-agent": "^5.0.0", - "progress": "^2.0.3" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", - "engines": { - "node": "*" - } - }, - "node_modules/form-data": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.1.4.tgz", - "integrity": "sha1-M8GDrPGTJ27KqYFDpp6Uv+4XUNE=", - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.5", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 0.12" - } - }, - "node_modules/fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" - }, - "node_modules/gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "dependencies": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "node_modules/getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "dependencies": { - "assert-plus": "^1.0.0" - } - }, - "node_modules/getpass/node_modules/assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "engines": { - "node": ">=0.8" - } - }, - "node_modules/glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/har-schema": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-1.0.5.tgz", - "integrity": "sha1-0mMTX0MwfALGAq/I/pWXDAFRNp4=", - "engines": { - "node": ">=4" - } - }, - "node_modules/har-validator": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-4.2.1.tgz", - "integrity": "sha1-M0gdDxu/9gDdID11gSpqX7oALio=", - "deprecated": "this library is no longer supported", - "dependencies": { - "ajv": "^4.9.1", - "har-schema": "^1.0.5" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" - }, - "node_modules/hawk": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz", - "integrity": "sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ=", - "deprecated": "This module moved to @hapi/hawk. Please make sure to switch over as this distribution is no longer supported and may contain bugs and critical security issues.", - "dependencies": { - "boom": "2.x.x", - "cryptiles": "2.x.x", - "hoek": "2.x.x", - "sntp": "1.x.x" - }, - "engines": { - "node": ">=0.10.32" - } - }, - "node_modules/hawk/node_modules/cryptiles": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz", - "integrity": "sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g=", - "deprecated": "This version has been deprecated in accordance with the hapi support policy (hapi.im/support). Please upgrade to the latest version to get the best features, bug fixes, and security patches. If you are unable to upgrade at this time, paid support is available for older versions (hapi.im/commercial).", - "dependencies": { - "boom": "2.x.x" - }, - "engines": { - "node": ">=0.10.40" - } - }, - "node_modules/hawk/node_modules/hoek": { - "version": "2.16.3", - "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz", - "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=", - "deprecated": "This version has been deprecated in accordance with the hapi support policy (hapi.im/support). Please upgrade to the latest version to get the best features, bug fixes, and security patches. If you are unable to upgrade at this time, paid support is available for older versions (hapi.im/commercial).", - "engines": { - "node": ">=0.10.40" - } - }, - "node_modules/http-proxy-agent": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", - "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", - "dependencies": { - "@tootallnate/once": "1", - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/http-response-object": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/http-response-object/-/http-response-object-3.0.2.tgz", - "integrity": "sha512-bqX0XTF6fnXSQcEJ2Iuyr75yVakyjIDCqroJQ/aHfSdlM743Cwqoi2nDYMzLGWUcuTWGWy8AAvOKXTfiv6q9RA==", - "dependencies": { - "@types/node": "^10.0.3" - } - }, - "node_modules/http-signature": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz", - "integrity": "sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8=", - "dependencies": { - "assert-plus": "^0.2.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - }, - "engines": { - "node": ">=0.8", - "npm": ">=1.3.7" - } - }, - "node_modules/https-proxy-agent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz", - "integrity": "sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==", - "dependencies": { - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "node_modules/is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dependencies": { - "number-is-nan": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" - }, - "node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" - }, - "node_modules/isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" - }, - "node_modules/jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=" - }, - "node_modules/json-schema": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" - }, - "node_modules/json-stable-stringify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", - "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", - "dependencies": { - "jsonify": "~0.0.0" - } - }, - "node_modules/json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" - }, - "node_modules/jsonify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", - "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", - "engines": { - "node": "*" - } - }, - "node_modules/jsprim": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", - "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", - "engines": [ - "node >=0.6.0" - ], - "dependencies": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.2.3", - "verror": "1.10.0" - } - }, - "node_modules/jsprim/node_modules/assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "engines": { - "node": ">=0.8" - } - }, - "node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/m3u8stream": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/m3u8stream/-/m3u8stream-0.8.3.tgz", - "integrity": "sha512-0nAcdrF8YJKUkb6PzWdvGftTPyCVWgoiot1AkNVbPKTeIGsWs6DrOjifrJ0Zi8WQfQmD2SuVCjkYIOip12igng==", - "dependencies": { - "miniget": "^4.0.0", - "sax": "^1.2.4" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dependencies": { - "semver": "^6.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/make-dir/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/mime-db": { - "version": "1.44.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz", - "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime-types": { - "version": "2.1.27", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz", - "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==", - "dependencies": { - "mime-db": "1.44.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/miniget": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/miniget/-/miniget-4.2.0.tgz", - "integrity": "sha512-IzTOaNgBw/qEpzkPTE7X2cUVXQfSKbG8w52Emi93zb+Zya2ZFrbmavpixzebuDJD9Ku4ecbaFlC7Y1cEESzQtQ==", - "engines": { - "node": ">=10" - } - }, - "node_modules/minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/minipass": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.3.tgz", - "integrity": "sha512-Mgd2GdMVzY+x3IJ+oHnVM+KG3lA5c8tnabyJKmHSaG2kAGpudxuOf8ToDkhumF7UzME7DecbQE9uOZhNm7PuJg==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "dependencies": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "bin": { - "mkdirp": "bin/cmd.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "node_modules/node-addon-api": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.1.0.tgz", - "integrity": "sha512-flmrDNB06LIl5lywUz7YlNGZH/5p0M7W28k8hzd9Lshtdh1wshD2Y+U4h9LD6KObOy1f+fEVdgprPrEymjM5uw==" - }, - "node_modules/node-fetch": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", - "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==", - "engines": { - "node": "4.x || >=6.0.0" - } - }, - "node_modules/nopt": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", - "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", - "dependencies": { - "abbrev": "1" - }, - "bin": { - "nopt": "bin/nopt.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "dependencies": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "node_modules/number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/oauth-sign": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", - "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=", - "engines": { - "node": "*" - } - }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/parse-cache-control": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parse-cache-control/-/parse-cache-control-1.0.1.tgz", - "integrity": "sha1-juqz5U+laSD+Fro493+iGqzC104=" - }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/performance-now": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-0.2.0.tgz", - "integrity": "sha1-M+8wxcd9TqIcWlOGnZG1bY8lVeU=" - }, - "node_modules/prism-media": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/prism-media/-/prism-media-1.2.3.tgz", - "integrity": "sha512-fSrR66n0l6roW9Rx4rSLMyTPTjRTiXy5RVqDOurACQ6si1rKHHKDU5gwBJoCsIV0R3o9gi+K50akl/qyw1C74A==", - "peerDependencies": { - "@discordjs/opus": "^0.3.3", - "ffmpeg-static": "^4.2.7 || ^3.0.0 || ^2.4.0", - "node-opus": "^0.3.3", - "opusscript": "^0.0.7" - }, - "peerDependenciesMeta": { - "@discordjs/opus": { - "optional": true - }, - "ffmpeg-static": { - "optional": true - }, - "node-opus": { - "optional": true - }, - "opusscript": { - "optional": true - } - } - }, - "node_modules/process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" - }, - "node_modules/progress": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", - "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" - }, - "node_modules/qs": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.4.0.tgz", - "integrity": "sha1-E+JtKK1rD/qpExLNO/cI7TUecjM=", - "engines": { - "node": ">=0.6" - } - }, - "node_modules/readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/readable-stream/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, - "node_modules/request": { - "version": "2.81.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.81.0.tgz", - "integrity": "sha1-xpKJRqDgbF+Nb4qTM0af/aRimKA=", - "deprecated": "request has been deprecated, see https://github.com/request/request/issues/3142", - "dependencies": { - "aws-sign2": "~0.6.0", - "aws4": "^1.2.1", - "caseless": "~0.12.0", - "combined-stream": "~1.0.5", - "extend": "~3.0.0", - "forever-agent": "~0.6.1", - "form-data": "~2.1.1", - "har-validator": "~4.2.1", - "hawk": "~3.1.3", - "http-signature": "~1.1.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.7", - "oauth-sign": "~0.8.1", - "performance-now": "^0.2.0", - "qs": "~6.4.0", - "safe-buffer": "^5.0.1", - "stringstream": "~0.0.4", - "tough-cookie": "~2.3.0", - "tunnel-agent": "^0.6.0", - "uuid": "^3.0.0" - }, - "engines": { - "node": ">= 4" - } - }, - "node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" - }, - "node_modules/sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" - }, - "node_modules/semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" - }, - "node_modules/setimmediate": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" - }, - "node_modules/signal-exit": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", - "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==" - }, - "node_modules/sntp": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz", - "integrity": "sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg=", - "deprecated": "This module moved to @hapi/sntp. Please make sure to switch over as this distribution is no longer supported and may contain bugs and critical security issues.", - "dependencies": { - "hoek": "2.x.x" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/sntp/node_modules/hoek": { - "version": "2.16.3", - "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz", - "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=", - "deprecated": "This version has been deprecated in accordance with the hapi support policy (hapi.im/support). Please upgrade to the latest version to get the best features, bug fixes, and security patches. If you are unable to upgrade at this time, paid support is available for older versions (hapi.im/commercial).", - "engines": { - "node": ">=0.10.40" - } - }, - "node_modules/sshpk": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", - "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", - "dependencies": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - }, - "bin": { - "sshpk-conv": "bin/sshpk-conv", - "sshpk-sign": "bin/sshpk-sign", - "sshpk-verify": "bin/sshpk-verify" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/sshpk/node_modules/assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "engines": { - "node": ">=0.8" - } - }, - "node_modules/sshpk/node_modules/tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" - }, - "node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/string_decoder/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, - "node_modules/string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dependencies": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/stringstream": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.6.tgz", - "integrity": "sha512-87GEBAkegbBcweToUrdzf3eLhWNg06FJTebl4BVJz/JgWy8CvEr9dRtX5qWphiynMSQlxxi+QqN0z5T32SLlhA==" - }, - "node_modules/strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dependencies": { - "ansi-regex": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/tar": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.0.tgz", - "integrity": "sha512-DUCttfhsnLCjwoDoFcI+B2iJgYa93vBnDUATYEeRx6sntCTdN01VnqsIuTlALXla/LWooNg0yEGeB+Y8WdFxGA==", - "dependencies": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^3.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/tough-cookie": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.4.tgz", - "integrity": "sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA==", - "dependencies": { - "punycode": "^1.4.1" - }, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "dependencies": { - "safe-buffer": "^5.0.1" - }, - "engines": { - "node": "*" - } - }, - "node_modules/tweetnacl": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.3.tgz", - "integrity": "sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==" - }, - "node_modules/typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" - }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" - }, - "node_modules/uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", - "bin": { - "uuid": "bin/uuid" - } - }, - "node_modules/verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "engines": [ - "node >=0.6.0" - ], - "dependencies": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "node_modules/verror/node_modules/assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "engines": { - "node": ">=0.8" - } - }, - "node_modules/wide-align": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", - "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", - "dependencies": { - "string-width": "^1.0.2 || 2" - } - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" - }, - "node_modules/ws": { - "version": "7.5.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.3.tgz", - "integrity": "sha512-kQ/dHIzuLrS6Je9+uv81ueZomEwH0qVYstcAQ4/Z93K8zeko9gtAbttJWzoC5ukqXY1PpoouV3+VSOqEAFt5wg==", - "engines": { - "node": ">=8.3.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, - "node_modules/ytdl-core": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/ytdl-core/-/ytdl-core-4.5.0.tgz", - "integrity": "sha512-e8r6skrakWNixsVlNPBMoRM1HrdW1swE97If9nenDUjF65uogYk4DvxIuqlmqRfBWKe+6aIZwqedNxUU9XLYJA==", - "dependencies": { - "m3u8stream": "^0.8.3", - "miniget": "^4.0.0", - "sax": "^1.1.3" - }, - "engines": { - "node": ">=10" - } - } - }, - "dependencies": { - "@derhuerst/http-basic": { - "version": "8.2.1", - "resolved": "https://registry.npmjs.org/@derhuerst/http-basic/-/http-basic-8.2.1.tgz", - "integrity": "sha512-Rmn7qQQulw2sxJ8qGfZ7OuqMWuhz8V+L5xnYKMF5cXVcYqmgWqlVEAme90pF7Ya8OVhxVxLmhh0rI2k6t7ITWw==", - "requires": { - "caseless": "^0.12.0", - "concat-stream": "^1.6.2", - "http-response-object": "^3.0.1", - "parse-cache-control": "^1.0.1" - } - }, - "@discordjs/collection": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/@discordjs/collection/-/collection-0.1.6.tgz", - "integrity": "sha512-utRNxnd9kSS2qhyivo9lMlt5qgAUasH2gb7BEOn6p0efFh24gjGomHzWKMAPn2hEReOPQZCJaRKoURwRotKucQ==" - }, - "@discordjs/form-data": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@discordjs/form-data/-/form-data-3.0.1.tgz", - "integrity": "sha512-ZfFsbgEXW71Rw/6EtBdrP5VxBJy4dthyC0tpQKGKmYFImlmmrykO14Za+BiIVduwjte0jXEBlhSKf0MWbFp9Eg==", - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - } - }, - "@discordjs/node-pre-gyp": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@discordjs/node-pre-gyp/-/node-pre-gyp-0.3.2.tgz", - "integrity": "sha512-NqRvPz0X+/3h+6ClElrSfvsD5XEG9ljYzXhzyo81DslVkVKzmmxX9FLs3MUr9qI7p53DG1eYru633qosrOqMyA==", - "requires": { - "detect-libc": "^1.0.3", - "http-proxy-agent": "^4.0.1", - "make-dir": "^3.1.0", - "node-fetch": "^2.6.1", - "nopt": "^5.0.0", - "npmlog": "^4.1.2", - "rimraf": "^3.0.2", - "semver": "^7.3.4", - "tar": "^6.1.0" - } - }, - "@discordjs/opus": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/@discordjs/opus/-/opus-0.5.0.tgz", - "integrity": "sha512-s3XUJ7dYV+UvYUiqkgs7sq8JKWMhQrHcwDECP2SKdxtL9h9qGa4mr0IR6XnZw+G/Sogx8c+HRS7+wEspkqk3zA==", - "requires": { - "@discordjs/node-pre-gyp": "^0.3.2", - "node-addon-api": "^3.1.0" - } - }, - "@tootallnate/once": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", - "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==" - }, - "@types/node": { - "version": "10.17.56", - "resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.56.tgz", - "integrity": "sha512-LuAa6t1t0Bfw4CuSR0UITsm1hP17YL+u82kfHGrHUWdhlBtH7sa7jGY5z7glGaIj/WDYDkRtgGd+KCjCzxBW1w==" - }, - "abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" - }, - "abort-controller": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", - "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", - "requires": { - "event-target-shim": "^5.0.0" - } - }, - "agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "requires": { - "debug": "4" - } - }, - "ajv": { - "version": "4.11.8", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz", - "integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=", - "requires": { - "co": "^4.6.0", - "json-stable-stringify": "^1.0.1" - } - }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" - }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" - }, - "are-we-there-yet": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", - "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "asn1": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", - "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "assert-plus": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz", - "integrity": "sha1-104bh+ev/A24qttwIfP+SBAasjQ=" - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" - }, - "aws-sign2": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz", - "integrity": "sha1-FDQt0428yU0OW4fXY81jYSwOeU8=" - }, - "aws4": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", - "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==" - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", - "requires": { - "tweetnacl": "^0.14.3" - }, - "dependencies": { - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" - } - } - }, - "boom": { - "version": "2.10.1", - "resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz", - "integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=", - "requires": { - "hoek": "2.x.x" - }, - "dependencies": { - "hoek": { - "version": "2.16.3", - "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz", - "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=" - } - } - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "buffer-from": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==" - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" - }, - "chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==" - }, - "co": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=" - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" - }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" - }, - "concat-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", - "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" - } - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" - }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "requires": { - "assert-plus": "^1.0.0" - }, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" - } - } - }, - "debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", - "requires": { - "ms": "2.1.2" - } - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" - }, - "detect-libc": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", - "integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=" - }, - "discord.js": { - "version": "12.5.1", - "resolved": "https://registry.npmjs.org/discord.js/-/discord.js-12.5.1.tgz", - "integrity": "sha512-VwZkVaUAIOB9mKdca0I5MefPMTQJTNg0qdgi1huF3iwsFwJ0L5s/Y69AQe+iPmjuV6j9rtKoG0Ta0n9vgEIL6w==", - "requires": { - "@discordjs/collection": "^0.1.6", - "@discordjs/form-data": "^3.0.1", - "abort-controller": "^3.0.0", - "node-fetch": "^2.6.1", - "prism-media": "^1.2.2", - "setimmediate": "^1.0.5", - "tweetnacl": "^1.0.3", - "ws": "^7.3.1" - } - }, - "dotenv": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", - "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==" - }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "env-paths": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", - "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==" - }, - "event-target-shim": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", - "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==" - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" - }, - "ffmpeg-static": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ffmpeg-static/-/ffmpeg-static-4.3.0.tgz", - "integrity": "sha512-w/tXYGlOSeAkPHjypjzylaChLrG5wRzHFyB47KFRDsGyBxUJJWiq9I/39/e6r9Y4aY1gzpejTLg5Aa0aqb0XXA==", - "requires": { - "@derhuerst/http-basic": "^8.2.0", - "env-paths": "^2.2.0", - "https-proxy-agent": "^5.0.0", - "progress": "^2.0.3" - } - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" - }, - "form-data": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.1.4.tgz", - "integrity": "sha1-M8GDrPGTJ27KqYFDpp6Uv+4XUNE=", - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.5", - "mime-types": "^2.1.12" - } - }, - "fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "requires": { - "minipass": "^3.0.0" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" - }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "requires": { - "assert-plus": "^1.0.0" - }, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" - } - } - }, - "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "har-schema": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-1.0.5.tgz", - "integrity": "sha1-0mMTX0MwfALGAq/I/pWXDAFRNp4=" - }, - "har-validator": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-4.2.1.tgz", - "integrity": "sha1-M0gdDxu/9gDdID11gSpqX7oALio=", - "requires": { - "ajv": "^4.9.1", - "har-schema": "^1.0.5" - } - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" - }, - "hawk": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz", - "integrity": "sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ=", - "requires": { - "boom": "2.x.x", - "cryptiles": "2.x.x", - "hoek": "2.x.x", - "sntp": "1.x.x" - }, - "dependencies": { - "cryptiles": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz", - "integrity": "sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g=", - "requires": { - "boom": "2.x.x" - } - }, - "hoek": { - "version": "2.16.3", - "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz", - "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=" - } - } - }, - "http-proxy-agent": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", - "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", - "requires": { - "@tootallnate/once": "1", - "agent-base": "6", - "debug": "4" - } - }, - "http-response-object": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/http-response-object/-/http-response-object-3.0.2.tgz", - "integrity": "sha512-bqX0XTF6fnXSQcEJ2Iuyr75yVakyjIDCqroJQ/aHfSdlM743Cwqoi2nDYMzLGWUcuTWGWy8AAvOKXTfiv6q9RA==", - "requires": { - "@types/node": "^10.0.3" - } - }, - "http-signature": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz", - "integrity": "sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8=", - "requires": { - "assert-plus": "^0.2.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "https-proxy-agent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz", - "integrity": "sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==", - "requires": { - "agent-base": "6", - "debug": "4" - } - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" - }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" - }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=" - }, - "json-schema": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" - }, - "json-stable-stringify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", - "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", - "requires": { - "jsonify": "~0.0.0" - } - }, - "json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" - }, - "jsonify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", - "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=" - }, - "jsprim": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", - "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.2.3", - "verror": "1.10.0" - }, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" - } - } - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "requires": { - "yallist": "^4.0.0" - } - }, - "m3u8stream": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/m3u8stream/-/m3u8stream-0.8.3.tgz", - "integrity": "sha512-0nAcdrF8YJKUkb6PzWdvGftTPyCVWgoiot1AkNVbPKTeIGsWs6DrOjifrJ0Zi8WQfQmD2SuVCjkYIOip12igng==", - "requires": { - "miniget": "^4.0.0", - "sax": "^1.2.4" - } - }, - "make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "requires": { - "semver": "^6.0.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" - } - } - }, - "mime-db": { - "version": "1.44.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz", - "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==" - }, - "mime-types": { - "version": "2.1.27", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz", - "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==", - "requires": { - "mime-db": "1.44.0" - } - }, - "miniget": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/miniget/-/miniget-4.2.0.tgz", - "integrity": "sha512-IzTOaNgBw/qEpzkPTE7X2cUVXQfSKbG8w52Emi93zb+Zya2ZFrbmavpixzebuDJD9Ku4ecbaFlC7Y1cEESzQtQ==" - }, - "minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minipass": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.3.tgz", - "integrity": "sha512-Mgd2GdMVzY+x3IJ+oHnVM+KG3lA5c8tnabyJKmHSaG2kAGpudxuOf8ToDkhumF7UzME7DecbQE9uOZhNm7PuJg==", - "requires": { - "yallist": "^4.0.0" - } - }, - "minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "requires": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - } - }, - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==" - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "node-addon-api": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.1.0.tgz", - "integrity": "sha512-flmrDNB06LIl5lywUz7YlNGZH/5p0M7W28k8hzd9Lshtdh1wshD2Y+U4h9LD6KObOy1f+fEVdgprPrEymjM5uw==" - }, - "node-fetch": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", - "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==" - }, - "nopt": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", - "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", - "requires": { - "abbrev": "1" - } - }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" - }, - "oauth-sign": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", - "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=" - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "requires": { - "wrappy": "1" - } - }, - "parse-cache-control": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parse-cache-control/-/parse-cache-control-1.0.1.tgz", - "integrity": "sha1-juqz5U+laSD+Fro493+iGqzC104=" - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" - }, - "performance-now": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-0.2.0.tgz", - "integrity": "sha1-M+8wxcd9TqIcWlOGnZG1bY8lVeU=" - }, - "prism-media": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/prism-media/-/prism-media-1.2.3.tgz", - "integrity": "sha512-fSrR66n0l6roW9Rx4rSLMyTPTjRTiXy5RVqDOurACQ6si1rKHHKDU5gwBJoCsIV0R3o9gi+K50akl/qyw1C74A==", - "requires": {} - }, - "process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" - }, - "progress": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", - "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==" - }, - "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" - }, - "qs": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.4.0.tgz", - "integrity": "sha1-E+JtKK1rD/qpExLNO/cI7TUecjM=" - }, - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - }, - "dependencies": { - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - } - } - }, - "request": { - "version": "2.81.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.81.0.tgz", - "integrity": "sha1-xpKJRqDgbF+Nb4qTM0af/aRimKA=", - "requires": { - "aws-sign2": "~0.6.0", - "aws4": "^1.2.1", - "caseless": "~0.12.0", - "combined-stream": "~1.0.5", - "extend": "~3.0.0", - "forever-agent": "~0.6.1", - "form-data": "~2.1.1", - "har-validator": "~4.2.1", - "hawk": "~3.1.3", - "http-signature": "~1.1.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.7", - "oauth-sign": "~0.8.1", - "performance-now": "^0.2.0", - "qs": "~6.4.0", - "safe-buffer": "^5.0.1", - "stringstream": "~0.0.4", - "tough-cookie": "~2.3.0", - "tunnel-agent": "^0.6.0", - "uuid": "^3.0.0" - } - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" - }, - "sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" - }, - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "requires": { - "lru-cache": "^6.0.0" - } - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" - }, - "setimmediate": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" - }, - "signal-exit": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", - "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==" - }, - "sntp": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz", - "integrity": "sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg=", - "requires": { - "hoek": "2.x.x" - }, - "dependencies": { - "hoek": { - "version": "2.16.3", - "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz", - "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=" - } - } - }, - "sshpk": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", - "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", - "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - }, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" - }, - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" - } - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "requires": { - "safe-buffer": "~5.1.0" - }, - "dependencies": { - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - } - } - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "stringstream": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.6.tgz", - "integrity": "sha512-87GEBAkegbBcweToUrdzf3eLhWNg06FJTebl4BVJz/JgWy8CvEr9dRtX5qWphiynMSQlxxi+QqN0z5T32SLlhA==" - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "tar": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.0.tgz", - "integrity": "sha512-DUCttfhsnLCjwoDoFcI+B2iJgYa93vBnDUATYEeRx6sntCTdN01VnqsIuTlALXla/LWooNg0yEGeB+Y8WdFxGA==", - "requires": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^3.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" - } - }, - "tough-cookie": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.4.tgz", - "integrity": "sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA==", - "requires": { - "punycode": "^1.4.1" - } - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "tweetnacl": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.3.tgz", - "integrity": "sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==" - }, - "typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" - }, - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==" - }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - }, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" - } - } - }, - "wide-align": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", - "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", - "requires": { - "string-width": "^1.0.2 || 2" - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" - }, - "ws": { - "version": "7.5.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.3.tgz", - "integrity": "sha512-kQ/dHIzuLrS6Je9+uv81ueZomEwH0qVYstcAQ4/Z93K8zeko9gtAbttJWzoC5ukqXY1PpoouV3+VSOqEAFt5wg==", - "requires": {} - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, - "ytdl-core": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/ytdl-core/-/ytdl-core-4.5.0.tgz", - "integrity": "sha512-e8r6skrakWNixsVlNPBMoRM1HrdW1swE97If9nenDUjF65uogYk4DvxIuqlmqRfBWKe+6aIZwqedNxUU9XLYJA==", - "requires": { - "m3u8stream": "^0.8.3", - "miniget": "^4.0.0", - "sax": "^1.1.3" - } - } - } -} diff --git a/package.json b/package.json deleted file mode 100644 index 8700bf6..0000000 --- a/package.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "name": "gractwo-bot", - "version": "1.0.0", - "description": "", - "engines": { - "node": "14.16.0" - }, - "main": "index.js", - "scripts": { - "test": "echo \"Error: no test specified\" && exit 1", - "start": "node index.js" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/jakubmanczak/gractwo-bot.git" - }, - "author": "j4mesen", - "license": "ISC", - "bugs": { - "url": "https://github.com/jakubmanczak/gractwo-bot/issues" - }, - "homepage": "https://github.com/jakubmanczak/gractwo-bot#readme", - "dependencies": { - "@discordjs/opus": "^0.5.0", - "discord.js": "^12.5.1", - "dotenv": "^10.0.0", - "ffmpeg-static": "^4.3.0", - "request": "2.81.0", - "ytdl-core": "^4.5.0" - } -} From 4f82c6efdda40f1a70c02e879e390494594d44b3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakub=20Ma=C5=84czak?= <56172798+jakubmanczak@users.noreply.github.com> Date: Sat, 21 Aug 2021 18:56:13 +0200 Subject: [PATCH 02/23] add basic init code for canary --- cfg.json | 5 + index.js | 38 ++++ package-lock.json | 450 ++++++++++++++++++++++++++++++++++++++++++++++ package.json | 23 +++ 4 files changed, 516 insertions(+) create mode 100644 cfg.json create mode 100644 index.js create mode 100644 package-lock.json create mode 100644 package.json diff --git a/cfg.json b/cfg.json new file mode 100644 index 0000000..31daa05 --- /dev/null +++ b/cfg.json @@ -0,0 +1,5 @@ +{ + "prefix": ".", + "hexBlue": "0x61f2ea", + "hexRed": "0xfb636b" +} diff --git a/index.js b/index.js new file mode 100644 index 0000000..ab01007 --- /dev/null +++ b/index.js @@ -0,0 +1,38 @@ +const { Client, Intents } = require('discord.js'); +// const cfg = require('./cfg.json'); +// const fs = require('fs'); +require('dotenv').config(); + +const cl = new Client({ intents: [Intents.FLAGS.GUILDS] }); + +// ======== ======== ======== ======== COMMAND HANDLER +// const cmds = []; +// const cmdsFls = fs +// .readdirSync(`./commands`) +// .filter((file) => file.endsWith(`.js`)); +// +// for (const Fl of cmdsFls) { +// const cmd = require(`./commands/${Fl}`); +// cmds.push(cmd.data.toJSON()); +// } + +// ======== ======== ======== ======== INTERACTIONS (don't work - require slash command registration) +// cl.on('interactionCreate', async (interaction) => { +// if (!interaction.isCommand()) return; +// +// const { commandName } = interaction; +// +// if (commandName === 'ping') { +// await interaction.reply('Pong!'); +// } else if (commandName === 'beep') { +// await interaction.reply('Boop!'); +// } else if (commandName === 'server') { +// await interaction.reply(`This server's name is: ${interaction.guild.name}`); +// } +// }); + +cl.once('ready', () => { + console.log(`bot ready`); +}); + +cl.login(process.env.token); diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..df35d9e --- /dev/null +++ b/package-lock.json @@ -0,0 +1,450 @@ +{ + "name": "discord-bot", + "version": "1.0.0", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "version": "1.0.0", + "license": "UNLICENSED", + "dependencies": { + "discord.js": "^13.1.0", + "dotenv": "^10.0.0" + } + }, + "node_modules/@discordjs/builders": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@discordjs/builders/-/builders-0.5.0.tgz", + "integrity": "sha512-HP5y4Rqw68o61Qv4qM5tVmDbWi4mdTFftqIOGRo33SNPpLJ1Ga3KEIR2ibKofkmsoQhEpLmopD1AZDs3cKpHuw==", + "dependencies": { + "@sindresorhus/is": "^4.0.1", + "discord-api-types": "^0.22.0", + "ow": "^0.27.0", + "ts-mixer": "^6.0.0", + "tslib": "^2.3.0" + }, + "engines": { + "node": ">=14.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/@discordjs/collection": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@discordjs/collection/-/collection-0.2.1.tgz", + "integrity": "sha512-vhxqzzM8gkomw0TYRF3tgx7SwElzUlXT/Aa41O7mOcyN6wIJfj5JmDWaO5XGKsGSsNx7F3i5oIlrucCCWV1Nog==", + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@discordjs/form-data": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@discordjs/form-data/-/form-data-3.0.1.tgz", + "integrity": "sha512-ZfFsbgEXW71Rw/6EtBdrP5VxBJy4dthyC0tpQKGKmYFImlmmrykO14Za+BiIVduwjte0jXEBlhSKf0MWbFp9Eg==", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@sapphire/async-queue": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/@sapphire/async-queue/-/async-queue-1.1.4.tgz", + "integrity": "sha512-fFrlF/uWpGOX5djw5Mu2Hnnrunao75WGey0sP0J3jnhmrJ5TAPzHYOmytD5iN/+pMxS+f+u/gezqHa9tPhRHEA==", + "engines": { + "node": ">=14", + "npm": ">=6" + } + }, + "node_modules/@sindresorhus/is": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.0.1.tgz", + "integrity": "sha512-Qm9hBEBu18wt1PO2flE7LPb30BHMQt1eQgbV76YntdNk73XZGpn3izvGTYxbGgzXKgbCjiia0uxTd3aTNQrY/g==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/is?sponsor=1" + } + }, + "node_modules/@types/node": { + "version": "16.7.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.7.1.tgz", + "integrity": "sha512-ncRdc45SoYJ2H4eWU9ReDfp3vtFqDYhjOsKlFFUDEn8V1Bgr2RjYal8YT5byfadWIRluhPFU6JiDOl0H6Sl87A==" + }, + "node_modules/@types/ws": { + "version": "7.4.7", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-7.4.7.tgz", + "integrity": "sha512-JQbbmxZTZehdc2iszGKs5oC3NFnjeay7mtAWrdt7qNtAVK0g19muApzAy4bm9byz79xa2ZnO/BOBC2R8RC5Lww==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/discord-api-types": { + "version": "0.22.0", + "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.22.0.tgz", + "integrity": "sha512-l8yD/2zRbZItUQpy7ZxBJwaLX/Bs2TGaCthRppk8Sw24LOIWg12t9JEreezPoYD0SQcC2htNNo27kYEpYW/Srg==", + "engines": { + "node": ">=12" + } + }, + "node_modules/discord.js": { + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/discord.js/-/discord.js-13.1.0.tgz", + "integrity": "sha512-gxO4CXKdHpqA+WKG+f5RNnd3srTDj5uFJHgOathksDE90YNq/Qijkd2WlMgTTMS6AJoEnHxI7G9eDQHCuZ+xDA==", + "dependencies": { + "@discordjs/builders": "^0.5.0", + "@discordjs/collection": "^0.2.1", + "@discordjs/form-data": "^3.0.1", + "@sapphire/async-queue": "^1.1.4", + "@types/ws": "^7.4.7", + "discord-api-types": "^0.22.0", + "node-fetch": "^2.6.1", + "ws": "^7.5.1" + }, + "engines": { + "node": ">=16.6.0", + "npm": ">=7.0.0" + } + }, + "node_modules/dot-prop": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-6.0.1.tgz", + "integrity": "sha512-tE7ztYzXHIeyvc7N+hR3oi7FIbf/NIjVP9hmAt3yMXzrQ072/fpjGLx2GxNxGxUl5V73MEqYzioOMoVhGMJ5cA==", + "dependencies": { + "is-obj": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/dotenv": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", + "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==", + "engines": { + "node": ">=10" + } + }, + "node_modules/is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=" + }, + "node_modules/mime-db": { + "version": "1.49.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.49.0.tgz", + "integrity": "sha512-CIc8j9URtOVApSFCQIF+VBkX1RwXp/oMMOrqdyXSBXq5RWNEsRfyj1kiRnQgmNXmHxPoFIxOroKA3zcU9P+nAA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.32", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.32.tgz", + "integrity": "sha512-hJGaVS4G4c9TSMYh2n6SQAGrC4RnfU+daP8G7cSCmaqNjiOoUY0VHCMS42pxnQmVF1GWwFhbHWn3RIxCqTmZ9A==", + "dependencies": { + "mime-db": "1.49.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/node-fetch": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", + "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==", + "engines": { + "node": "4.x || >=6.0.0" + } + }, + "node_modules/ow": { + "version": "0.27.0", + "resolved": "https://registry.npmjs.org/ow/-/ow-0.27.0.tgz", + "integrity": "sha512-SGnrGUbhn4VaUGdU0EJLMwZWSupPmF46hnTRII7aCLCrqixTAC5eKo8kI4/XXf1eaaI8YEVT+3FeGNJI9himAQ==", + "dependencies": { + "@sindresorhus/is": "^4.0.1", + "callsites": "^3.1.0", + "dot-prop": "^6.0.1", + "lodash.isequal": "^4.5.0", + "type-fest": "^1.2.1", + "vali-date": "^1.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ts-mixer": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/ts-mixer/-/ts-mixer-6.0.0.tgz", + "integrity": "sha512-nXIb1fvdY5CBSrDIblLn73NW0qRDk5yJ0Sk1qPBF560OdJfQp9jhl+0tzcY09OZ9U+6GpeoI9RjwoIKFIoB9MQ==" + }, + "node_modules/tslib": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + }, + "node_modules/type-fest": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", + "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/vali-date": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/vali-date/-/vali-date-1.0.0.tgz", + "integrity": "sha1-G5BKWWCfsyjvB4E4Qgk09rhnCaY=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ws": { + "version": "7.5.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.3.tgz", + "integrity": "sha512-kQ/dHIzuLrS6Je9+uv81ueZomEwH0qVYstcAQ4/Z93K8zeko9gtAbttJWzoC5ukqXY1PpoouV3+VSOqEAFt5wg==", + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + } + }, + "dependencies": { + "@discordjs/builders": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@discordjs/builders/-/builders-0.5.0.tgz", + "integrity": "sha512-HP5y4Rqw68o61Qv4qM5tVmDbWi4mdTFftqIOGRo33SNPpLJ1Ga3KEIR2ibKofkmsoQhEpLmopD1AZDs3cKpHuw==", + "requires": { + "@sindresorhus/is": "^4.0.1", + "discord-api-types": "^0.22.0", + "ow": "^0.27.0", + "ts-mixer": "^6.0.0", + "tslib": "^2.3.0" + } + }, + "@discordjs/collection": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@discordjs/collection/-/collection-0.2.1.tgz", + "integrity": "sha512-vhxqzzM8gkomw0TYRF3tgx7SwElzUlXT/Aa41O7mOcyN6wIJfj5JmDWaO5XGKsGSsNx7F3i5oIlrucCCWV1Nog==" + }, + "@discordjs/form-data": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@discordjs/form-data/-/form-data-3.0.1.tgz", + "integrity": "sha512-ZfFsbgEXW71Rw/6EtBdrP5VxBJy4dthyC0tpQKGKmYFImlmmrykO14Za+BiIVduwjte0jXEBlhSKf0MWbFp9Eg==", + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + } + }, + "@sapphire/async-queue": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/@sapphire/async-queue/-/async-queue-1.1.4.tgz", + "integrity": "sha512-fFrlF/uWpGOX5djw5Mu2Hnnrunao75WGey0sP0J3jnhmrJ5TAPzHYOmytD5iN/+pMxS+f+u/gezqHa9tPhRHEA==" + }, + "@sindresorhus/is": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.0.1.tgz", + "integrity": "sha512-Qm9hBEBu18wt1PO2flE7LPb30BHMQt1eQgbV76YntdNk73XZGpn3izvGTYxbGgzXKgbCjiia0uxTd3aTNQrY/g==" + }, + "@types/node": { + "version": "16.7.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.7.1.tgz", + "integrity": "sha512-ncRdc45SoYJ2H4eWU9ReDfp3vtFqDYhjOsKlFFUDEn8V1Bgr2RjYal8YT5byfadWIRluhPFU6JiDOl0H6Sl87A==" + }, + "@types/ws": { + "version": "7.4.7", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-7.4.7.tgz", + "integrity": "sha512-JQbbmxZTZehdc2iszGKs5oC3NFnjeay7mtAWrdt7qNtAVK0g19muApzAy4bm9byz79xa2ZnO/BOBC2R8RC5Lww==", + "requires": { + "@types/node": "*" + } + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" + }, + "callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==" + }, + "combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" + }, + "discord-api-types": { + "version": "0.22.0", + "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.22.0.tgz", + "integrity": "sha512-l8yD/2zRbZItUQpy7ZxBJwaLX/Bs2TGaCthRppk8Sw24LOIWg12t9JEreezPoYD0SQcC2htNNo27kYEpYW/Srg==" + }, + "discord.js": { + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/discord.js/-/discord.js-13.1.0.tgz", + "integrity": "sha512-gxO4CXKdHpqA+WKG+f5RNnd3srTDj5uFJHgOathksDE90YNq/Qijkd2WlMgTTMS6AJoEnHxI7G9eDQHCuZ+xDA==", + "requires": { + "@discordjs/builders": "^0.5.0", + "@discordjs/collection": "^0.2.1", + "@discordjs/form-data": "^3.0.1", + "@sapphire/async-queue": "^1.1.4", + "@types/ws": "^7.4.7", + "discord-api-types": "^0.22.0", + "node-fetch": "^2.6.1", + "ws": "^7.5.1" + } + }, + "dot-prop": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-6.0.1.tgz", + "integrity": "sha512-tE7ztYzXHIeyvc7N+hR3oi7FIbf/NIjVP9hmAt3yMXzrQ072/fpjGLx2GxNxGxUl5V73MEqYzioOMoVhGMJ5cA==", + "requires": { + "is-obj": "^2.0.0" + } + }, + "dotenv": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", + "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==" + }, + "is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==" + }, + "lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=" + }, + "mime-db": { + "version": "1.49.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.49.0.tgz", + "integrity": "sha512-CIc8j9URtOVApSFCQIF+VBkX1RwXp/oMMOrqdyXSBXq5RWNEsRfyj1kiRnQgmNXmHxPoFIxOroKA3zcU9P+nAA==" + }, + "mime-types": { + "version": "2.1.32", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.32.tgz", + "integrity": "sha512-hJGaVS4G4c9TSMYh2n6SQAGrC4RnfU+daP8G7cSCmaqNjiOoUY0VHCMS42pxnQmVF1GWwFhbHWn3RIxCqTmZ9A==", + "requires": { + "mime-db": "1.49.0" + } + }, + "node-fetch": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", + "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==" + }, + "ow": { + "version": "0.27.0", + "resolved": "https://registry.npmjs.org/ow/-/ow-0.27.0.tgz", + "integrity": "sha512-SGnrGUbhn4VaUGdU0EJLMwZWSupPmF46hnTRII7aCLCrqixTAC5eKo8kI4/XXf1eaaI8YEVT+3FeGNJI9himAQ==", + "requires": { + "@sindresorhus/is": "^4.0.1", + "callsites": "^3.1.0", + "dot-prop": "^6.0.1", + "lodash.isequal": "^4.5.0", + "type-fest": "^1.2.1", + "vali-date": "^1.0.0" + } + }, + "ts-mixer": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/ts-mixer/-/ts-mixer-6.0.0.tgz", + "integrity": "sha512-nXIb1fvdY5CBSrDIblLn73NW0qRDk5yJ0Sk1qPBF560OdJfQp9jhl+0tzcY09OZ9U+6GpeoI9RjwoIKFIoB9MQ==" + }, + "tslib": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + }, + "type-fest": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", + "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==" + }, + "vali-date": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/vali-date/-/vali-date-1.0.0.tgz", + "integrity": "sha1-G5BKWWCfsyjvB4E4Qgk09rhnCaY=" + }, + "ws": { + "version": "7.5.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.3.tgz", + "integrity": "sha512-kQ/dHIzuLrS6Je9+uv81ueZomEwH0qVYstcAQ4/Z93K8zeko9gtAbttJWzoC5ukqXY1PpoouV3+VSOqEAFt5wg==", + "requires": {} + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..b6f409c --- /dev/null +++ b/package.json @@ -0,0 +1,23 @@ +{ + "name": "discord-bot", + "version": "1.0.0", + "description": "gractwo-bot is a Discord bot written in JavaScript, using node.js and discord.js.\r It has been created for and only serves the Gractwo Discord server. It is hosted using Heroku.", + "main": "index.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/Gractwo/discord-bot.git" + }, + "author": "", + "license": "UNLICENSED", + "bugs": { + "url": "https://github.com/Gractwo/discord-bot/issues" + }, + "homepage": "https://github.com/Gractwo/discord-bot#readme", + "dependencies": { + "discord.js": "^13.1.0", + "dotenv": "^10.0.0" + } +} From 2b5d3fa0b652a1409a2df0e27d69d7b6cb1f5678 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakub=20Ma=C5=84czak?= <56172798+jakubmanczak@users.noreply.github.com> Date: Mon, 23 Aug 2021 15:05:17 +0200 Subject: [PATCH 03/23] basic command handler (messageCreate fixme) --- index.js | 38 -- package-lock.json | 896 ++++++++++++++++----------------- package.json | 42 +- cfg.json => src/cfg.json | 0 src/cmds/ping.js | 6 + gractwo.png => src/gractwo.png | Bin src/index.js | 44 ++ 7 files changed, 519 insertions(+), 507 deletions(-) delete mode 100644 index.js rename cfg.json => src/cfg.json (100%) create mode 100644 src/cmds/ping.js rename gractwo.png => src/gractwo.png (100%) create mode 100644 src/index.js diff --git a/index.js b/index.js deleted file mode 100644 index ab01007..0000000 --- a/index.js +++ /dev/null @@ -1,38 +0,0 @@ -const { Client, Intents } = require('discord.js'); -// const cfg = require('./cfg.json'); -// const fs = require('fs'); -require('dotenv').config(); - -const cl = new Client({ intents: [Intents.FLAGS.GUILDS] }); - -// ======== ======== ======== ======== COMMAND HANDLER -// const cmds = []; -// const cmdsFls = fs -// .readdirSync(`./commands`) -// .filter((file) => file.endsWith(`.js`)); -// -// for (const Fl of cmdsFls) { -// const cmd = require(`./commands/${Fl}`); -// cmds.push(cmd.data.toJSON()); -// } - -// ======== ======== ======== ======== INTERACTIONS (don't work - require slash command registration) -// cl.on('interactionCreate', async (interaction) => { -// if (!interaction.isCommand()) return; -// -// const { commandName } = interaction; -// -// if (commandName === 'ping') { -// await interaction.reply('Pong!'); -// } else if (commandName === 'beep') { -// await interaction.reply('Boop!'); -// } else if (commandName === 'server') { -// await interaction.reply(`This server's name is: ${interaction.guild.name}`); -// } -// }); - -cl.once('ready', () => { - console.log(`bot ready`); -}); - -cl.login(process.env.token); diff --git a/package-lock.json b/package-lock.json index df35d9e..7f76ef6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,450 +1,450 @@ { - "name": "discord-bot", - "version": "1.0.0", - "lockfileVersion": 2, - "requires": true, - "packages": { - "": { - "version": "1.0.0", - "license": "UNLICENSED", - "dependencies": { - "discord.js": "^13.1.0", - "dotenv": "^10.0.0" - } - }, - "node_modules/@discordjs/builders": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/@discordjs/builders/-/builders-0.5.0.tgz", - "integrity": "sha512-HP5y4Rqw68o61Qv4qM5tVmDbWi4mdTFftqIOGRo33SNPpLJ1Ga3KEIR2ibKofkmsoQhEpLmopD1AZDs3cKpHuw==", - "dependencies": { - "@sindresorhus/is": "^4.0.1", - "discord-api-types": "^0.22.0", - "ow": "^0.27.0", - "ts-mixer": "^6.0.0", - "tslib": "^2.3.0" - }, - "engines": { - "node": ">=14.0.0", - "npm": ">=7.0.0" - } - }, - "node_modules/@discordjs/collection": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/@discordjs/collection/-/collection-0.2.1.tgz", - "integrity": "sha512-vhxqzzM8gkomw0TYRF3tgx7SwElzUlXT/Aa41O7mOcyN6wIJfj5JmDWaO5XGKsGSsNx7F3i5oIlrucCCWV1Nog==", - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@discordjs/form-data": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@discordjs/form-data/-/form-data-3.0.1.tgz", - "integrity": "sha512-ZfFsbgEXW71Rw/6EtBdrP5VxBJy4dthyC0tpQKGKmYFImlmmrykO14Za+BiIVduwjte0jXEBlhSKf0MWbFp9Eg==", - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/@sapphire/async-queue": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/@sapphire/async-queue/-/async-queue-1.1.4.tgz", - "integrity": "sha512-fFrlF/uWpGOX5djw5Mu2Hnnrunao75WGey0sP0J3jnhmrJ5TAPzHYOmytD5iN/+pMxS+f+u/gezqHa9tPhRHEA==", - "engines": { - "node": ">=14", - "npm": ">=6" - } - }, - "node_modules/@sindresorhus/is": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.0.1.tgz", - "integrity": "sha512-Qm9hBEBu18wt1PO2flE7LPb30BHMQt1eQgbV76YntdNk73XZGpn3izvGTYxbGgzXKgbCjiia0uxTd3aTNQrY/g==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/is?sponsor=1" - } - }, - "node_modules/@types/node": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-16.7.1.tgz", - "integrity": "sha512-ncRdc45SoYJ2H4eWU9ReDfp3vtFqDYhjOsKlFFUDEn8V1Bgr2RjYal8YT5byfadWIRluhPFU6JiDOl0H6Sl87A==" - }, - "node_modules/@types/ws": { - "version": "7.4.7", - "resolved": "https://registry.npmjs.org/@types/ws/-/ws-7.4.7.tgz", - "integrity": "sha512-JQbbmxZTZehdc2iszGKs5oC3NFnjeay7mtAWrdt7qNtAVK0g19muApzAy4bm9byz79xa2ZnO/BOBC2R8RC5Lww==", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" - }, - "node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "engines": { - "node": ">=6" - } - }, - "node_modules/combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dependencies": { - "delayed-stream": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/discord-api-types": { - "version": "0.22.0", - "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.22.0.tgz", - "integrity": "sha512-l8yD/2zRbZItUQpy7ZxBJwaLX/Bs2TGaCthRppk8Sw24LOIWg12t9JEreezPoYD0SQcC2htNNo27kYEpYW/Srg==", - "engines": { - "node": ">=12" - } - }, - "node_modules/discord.js": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/discord.js/-/discord.js-13.1.0.tgz", - "integrity": "sha512-gxO4CXKdHpqA+WKG+f5RNnd3srTDj5uFJHgOathksDE90YNq/Qijkd2WlMgTTMS6AJoEnHxI7G9eDQHCuZ+xDA==", - "dependencies": { - "@discordjs/builders": "^0.5.0", - "@discordjs/collection": "^0.2.1", - "@discordjs/form-data": "^3.0.1", - "@sapphire/async-queue": "^1.1.4", - "@types/ws": "^7.4.7", - "discord-api-types": "^0.22.0", - "node-fetch": "^2.6.1", - "ws": "^7.5.1" - }, - "engines": { - "node": ">=16.6.0", - "npm": ">=7.0.0" - } - }, - "node_modules/dot-prop": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-6.0.1.tgz", - "integrity": "sha512-tE7ztYzXHIeyvc7N+hR3oi7FIbf/NIjVP9hmAt3yMXzrQ072/fpjGLx2GxNxGxUl5V73MEqYzioOMoVhGMJ5cA==", - "dependencies": { - "is-obj": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/dotenv": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", - "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==", - "engines": { - "node": ">=10" - } - }, - "node_modules/is-obj": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", - "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", - "engines": { - "node": ">=8" - } - }, - "node_modules/lodash.isequal": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", - "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=" - }, - "node_modules/mime-db": { - "version": "1.49.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.49.0.tgz", - "integrity": "sha512-CIc8j9URtOVApSFCQIF+VBkX1RwXp/oMMOrqdyXSBXq5RWNEsRfyj1kiRnQgmNXmHxPoFIxOroKA3zcU9P+nAA==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime-types": { - "version": "2.1.32", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.32.tgz", - "integrity": "sha512-hJGaVS4G4c9TSMYh2n6SQAGrC4RnfU+daP8G7cSCmaqNjiOoUY0VHCMS42pxnQmVF1GWwFhbHWn3RIxCqTmZ9A==", - "dependencies": { - "mime-db": "1.49.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/node-fetch": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", - "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==", - "engines": { - "node": "4.x || >=6.0.0" - } - }, - "node_modules/ow": { - "version": "0.27.0", - "resolved": "https://registry.npmjs.org/ow/-/ow-0.27.0.tgz", - "integrity": "sha512-SGnrGUbhn4VaUGdU0EJLMwZWSupPmF46hnTRII7aCLCrqixTAC5eKo8kI4/XXf1eaaI8YEVT+3FeGNJI9himAQ==", - "dependencies": { - "@sindresorhus/is": "^4.0.1", - "callsites": "^3.1.0", - "dot-prop": "^6.0.1", - "lodash.isequal": "^4.5.0", - "type-fest": "^1.2.1", - "vali-date": "^1.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ts-mixer": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/ts-mixer/-/ts-mixer-6.0.0.tgz", - "integrity": "sha512-nXIb1fvdY5CBSrDIblLn73NW0qRDk5yJ0Sk1qPBF560OdJfQp9jhl+0tzcY09OZ9U+6GpeoI9RjwoIKFIoB9MQ==" - }, - "node_modules/tslib": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" - }, - "node_modules/type-fest": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", - "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/vali-date": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/vali-date/-/vali-date-1.0.0.tgz", - "integrity": "sha1-G5BKWWCfsyjvB4E4Qgk09rhnCaY=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ws": { - "version": "7.5.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.3.tgz", - "integrity": "sha512-kQ/dHIzuLrS6Je9+uv81ueZomEwH0qVYstcAQ4/Z93K8zeko9gtAbttJWzoC5ukqXY1PpoouV3+VSOqEAFt5wg==", - "engines": { - "node": ">=8.3.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - } - }, - "dependencies": { - "@discordjs/builders": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/@discordjs/builders/-/builders-0.5.0.tgz", - "integrity": "sha512-HP5y4Rqw68o61Qv4qM5tVmDbWi4mdTFftqIOGRo33SNPpLJ1Ga3KEIR2ibKofkmsoQhEpLmopD1AZDs3cKpHuw==", - "requires": { - "@sindresorhus/is": "^4.0.1", - "discord-api-types": "^0.22.0", - "ow": "^0.27.0", - "ts-mixer": "^6.0.0", - "tslib": "^2.3.0" - } - }, - "@discordjs/collection": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/@discordjs/collection/-/collection-0.2.1.tgz", - "integrity": "sha512-vhxqzzM8gkomw0TYRF3tgx7SwElzUlXT/Aa41O7mOcyN6wIJfj5JmDWaO5XGKsGSsNx7F3i5oIlrucCCWV1Nog==" - }, - "@discordjs/form-data": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@discordjs/form-data/-/form-data-3.0.1.tgz", - "integrity": "sha512-ZfFsbgEXW71Rw/6EtBdrP5VxBJy4dthyC0tpQKGKmYFImlmmrykO14Za+BiIVduwjte0jXEBlhSKf0MWbFp9Eg==", - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - } - }, - "@sapphire/async-queue": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/@sapphire/async-queue/-/async-queue-1.1.4.tgz", - "integrity": "sha512-fFrlF/uWpGOX5djw5Mu2Hnnrunao75WGey0sP0J3jnhmrJ5TAPzHYOmytD5iN/+pMxS+f+u/gezqHa9tPhRHEA==" - }, - "@sindresorhus/is": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.0.1.tgz", - "integrity": "sha512-Qm9hBEBu18wt1PO2flE7LPb30BHMQt1eQgbV76YntdNk73XZGpn3izvGTYxbGgzXKgbCjiia0uxTd3aTNQrY/g==" - }, - "@types/node": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-16.7.1.tgz", - "integrity": "sha512-ncRdc45SoYJ2H4eWU9ReDfp3vtFqDYhjOsKlFFUDEn8V1Bgr2RjYal8YT5byfadWIRluhPFU6JiDOl0H6Sl87A==" - }, - "@types/ws": { - "version": "7.4.7", - "resolved": "https://registry.npmjs.org/@types/ws/-/ws-7.4.7.tgz", - "integrity": "sha512-JQbbmxZTZehdc2iszGKs5oC3NFnjeay7mtAWrdt7qNtAVK0g19muApzAy4bm9byz79xa2ZnO/BOBC2R8RC5Lww==", - "requires": { - "@types/node": "*" - } - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" - }, - "callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==" - }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" - }, - "discord-api-types": { - "version": "0.22.0", - "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.22.0.tgz", - "integrity": "sha512-l8yD/2zRbZItUQpy7ZxBJwaLX/Bs2TGaCthRppk8Sw24LOIWg12t9JEreezPoYD0SQcC2htNNo27kYEpYW/Srg==" - }, - "discord.js": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/discord.js/-/discord.js-13.1.0.tgz", - "integrity": "sha512-gxO4CXKdHpqA+WKG+f5RNnd3srTDj5uFJHgOathksDE90YNq/Qijkd2WlMgTTMS6AJoEnHxI7G9eDQHCuZ+xDA==", - "requires": { - "@discordjs/builders": "^0.5.0", - "@discordjs/collection": "^0.2.1", - "@discordjs/form-data": "^3.0.1", - "@sapphire/async-queue": "^1.1.4", - "@types/ws": "^7.4.7", - "discord-api-types": "^0.22.0", - "node-fetch": "^2.6.1", - "ws": "^7.5.1" - } - }, - "dot-prop": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-6.0.1.tgz", - "integrity": "sha512-tE7ztYzXHIeyvc7N+hR3oi7FIbf/NIjVP9hmAt3yMXzrQ072/fpjGLx2GxNxGxUl5V73MEqYzioOMoVhGMJ5cA==", - "requires": { - "is-obj": "^2.0.0" - } - }, - "dotenv": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", - "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==" - }, - "is-obj": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", - "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==" - }, - "lodash.isequal": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", - "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=" - }, - "mime-db": { - "version": "1.49.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.49.0.tgz", - "integrity": "sha512-CIc8j9URtOVApSFCQIF+VBkX1RwXp/oMMOrqdyXSBXq5RWNEsRfyj1kiRnQgmNXmHxPoFIxOroKA3zcU9P+nAA==" - }, - "mime-types": { - "version": "2.1.32", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.32.tgz", - "integrity": "sha512-hJGaVS4G4c9TSMYh2n6SQAGrC4RnfU+daP8G7cSCmaqNjiOoUY0VHCMS42pxnQmVF1GWwFhbHWn3RIxCqTmZ9A==", - "requires": { - "mime-db": "1.49.0" - } - }, - "node-fetch": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", - "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==" - }, - "ow": { - "version": "0.27.0", - "resolved": "https://registry.npmjs.org/ow/-/ow-0.27.0.tgz", - "integrity": "sha512-SGnrGUbhn4VaUGdU0EJLMwZWSupPmF46hnTRII7aCLCrqixTAC5eKo8kI4/XXf1eaaI8YEVT+3FeGNJI9himAQ==", - "requires": { - "@sindresorhus/is": "^4.0.1", - "callsites": "^3.1.0", - "dot-prop": "^6.0.1", - "lodash.isequal": "^4.5.0", - "type-fest": "^1.2.1", - "vali-date": "^1.0.0" - } - }, - "ts-mixer": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/ts-mixer/-/ts-mixer-6.0.0.tgz", - "integrity": "sha512-nXIb1fvdY5CBSrDIblLn73NW0qRDk5yJ0Sk1qPBF560OdJfQp9jhl+0tzcY09OZ9U+6GpeoI9RjwoIKFIoB9MQ==" - }, - "tslib": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" - }, - "type-fest": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", - "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==" - }, - "vali-date": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/vali-date/-/vali-date-1.0.0.tgz", - "integrity": "sha1-G5BKWWCfsyjvB4E4Qgk09rhnCaY=" - }, - "ws": { - "version": "7.5.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.3.tgz", - "integrity": "sha512-kQ/dHIzuLrS6Je9+uv81ueZomEwH0qVYstcAQ4/Z93K8zeko9gtAbttJWzoC5ukqXY1PpoouV3+VSOqEAFt5wg==", - "requires": {} - } - } + "name": "discord-bot", + "version": "1.0.0", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "version": "1.0.0", + "license": "UNLICENSED", + "dependencies": { + "discord.js": "^13.1.0", + "dotenv": "^10.0.0" + } + }, + "node_modules/@discordjs/builders": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@discordjs/builders/-/builders-0.5.0.tgz", + "integrity": "sha512-HP5y4Rqw68o61Qv4qM5tVmDbWi4mdTFftqIOGRo33SNPpLJ1Ga3KEIR2ibKofkmsoQhEpLmopD1AZDs3cKpHuw==", + "dependencies": { + "@sindresorhus/is": "^4.0.1", + "discord-api-types": "^0.22.0", + "ow": "^0.27.0", + "ts-mixer": "^6.0.0", + "tslib": "^2.3.0" + }, + "engines": { + "node": ">=14.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/@discordjs/collection": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@discordjs/collection/-/collection-0.2.1.tgz", + "integrity": "sha512-vhxqzzM8gkomw0TYRF3tgx7SwElzUlXT/Aa41O7mOcyN6wIJfj5JmDWaO5XGKsGSsNx7F3i5oIlrucCCWV1Nog==", + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@discordjs/form-data": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@discordjs/form-data/-/form-data-3.0.1.tgz", + "integrity": "sha512-ZfFsbgEXW71Rw/6EtBdrP5VxBJy4dthyC0tpQKGKmYFImlmmrykO14Za+BiIVduwjte0jXEBlhSKf0MWbFp9Eg==", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@sapphire/async-queue": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/@sapphire/async-queue/-/async-queue-1.1.4.tgz", + "integrity": "sha512-fFrlF/uWpGOX5djw5Mu2Hnnrunao75WGey0sP0J3jnhmrJ5TAPzHYOmytD5iN/+pMxS+f+u/gezqHa9tPhRHEA==", + "engines": { + "node": ">=14", + "npm": ">=6" + } + }, + "node_modules/@sindresorhus/is": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.0.1.tgz", + "integrity": "sha512-Qm9hBEBu18wt1PO2flE7LPb30BHMQt1eQgbV76YntdNk73XZGpn3izvGTYxbGgzXKgbCjiia0uxTd3aTNQrY/g==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/is?sponsor=1" + } + }, + "node_modules/@types/node": { + "version": "16.7.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.7.1.tgz", + "integrity": "sha512-ncRdc45SoYJ2H4eWU9ReDfp3vtFqDYhjOsKlFFUDEn8V1Bgr2RjYal8YT5byfadWIRluhPFU6JiDOl0H6Sl87A==" + }, + "node_modules/@types/ws": { + "version": "7.4.7", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-7.4.7.tgz", + "integrity": "sha512-JQbbmxZTZehdc2iszGKs5oC3NFnjeay7mtAWrdt7qNtAVK0g19muApzAy4bm9byz79xa2ZnO/BOBC2R8RC5Lww==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/discord-api-types": { + "version": "0.22.0", + "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.22.0.tgz", + "integrity": "sha512-l8yD/2zRbZItUQpy7ZxBJwaLX/Bs2TGaCthRppk8Sw24LOIWg12t9JEreezPoYD0SQcC2htNNo27kYEpYW/Srg==", + "engines": { + "node": ">=12" + } + }, + "node_modules/discord.js": { + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/discord.js/-/discord.js-13.1.0.tgz", + "integrity": "sha512-gxO4CXKdHpqA+WKG+f5RNnd3srTDj5uFJHgOathksDE90YNq/Qijkd2WlMgTTMS6AJoEnHxI7G9eDQHCuZ+xDA==", + "dependencies": { + "@discordjs/builders": "^0.5.0", + "@discordjs/collection": "^0.2.1", + "@discordjs/form-data": "^3.0.1", + "@sapphire/async-queue": "^1.1.4", + "@types/ws": "^7.4.7", + "discord-api-types": "^0.22.0", + "node-fetch": "^2.6.1", + "ws": "^7.5.1" + }, + "engines": { + "node": ">=16.6.0", + "npm": ">=7.0.0" + } + }, + "node_modules/dot-prop": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-6.0.1.tgz", + "integrity": "sha512-tE7ztYzXHIeyvc7N+hR3oi7FIbf/NIjVP9hmAt3yMXzrQ072/fpjGLx2GxNxGxUl5V73MEqYzioOMoVhGMJ5cA==", + "dependencies": { + "is-obj": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/dotenv": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", + "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==", + "engines": { + "node": ">=10" + } + }, + "node_modules/is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=" + }, + "node_modules/mime-db": { + "version": "1.49.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.49.0.tgz", + "integrity": "sha512-CIc8j9URtOVApSFCQIF+VBkX1RwXp/oMMOrqdyXSBXq5RWNEsRfyj1kiRnQgmNXmHxPoFIxOroKA3zcU9P+nAA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.32", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.32.tgz", + "integrity": "sha512-hJGaVS4G4c9TSMYh2n6SQAGrC4RnfU+daP8G7cSCmaqNjiOoUY0VHCMS42pxnQmVF1GWwFhbHWn3RIxCqTmZ9A==", + "dependencies": { + "mime-db": "1.49.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/node-fetch": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", + "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==", + "engines": { + "node": "4.x || >=6.0.0" + } + }, + "node_modules/ow": { + "version": "0.27.0", + "resolved": "https://registry.npmjs.org/ow/-/ow-0.27.0.tgz", + "integrity": "sha512-SGnrGUbhn4VaUGdU0EJLMwZWSupPmF46hnTRII7aCLCrqixTAC5eKo8kI4/XXf1eaaI8YEVT+3FeGNJI9himAQ==", + "dependencies": { + "@sindresorhus/is": "^4.0.1", + "callsites": "^3.1.0", + "dot-prop": "^6.0.1", + "lodash.isequal": "^4.5.0", + "type-fest": "^1.2.1", + "vali-date": "^1.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ts-mixer": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/ts-mixer/-/ts-mixer-6.0.0.tgz", + "integrity": "sha512-nXIb1fvdY5CBSrDIblLn73NW0qRDk5yJ0Sk1qPBF560OdJfQp9jhl+0tzcY09OZ9U+6GpeoI9RjwoIKFIoB9MQ==" + }, + "node_modules/tslib": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + }, + "node_modules/type-fest": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", + "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/vali-date": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/vali-date/-/vali-date-1.0.0.tgz", + "integrity": "sha1-G5BKWWCfsyjvB4E4Qgk09rhnCaY=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ws": { + "version": "7.5.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.3.tgz", + "integrity": "sha512-kQ/dHIzuLrS6Je9+uv81ueZomEwH0qVYstcAQ4/Z93K8zeko9gtAbttJWzoC5ukqXY1PpoouV3+VSOqEAFt5wg==", + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + } + }, + "dependencies": { + "@discordjs/builders": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@discordjs/builders/-/builders-0.5.0.tgz", + "integrity": "sha512-HP5y4Rqw68o61Qv4qM5tVmDbWi4mdTFftqIOGRo33SNPpLJ1Ga3KEIR2ibKofkmsoQhEpLmopD1AZDs3cKpHuw==", + "requires": { + "@sindresorhus/is": "^4.0.1", + "discord-api-types": "^0.22.0", + "ow": "^0.27.0", + "ts-mixer": "^6.0.0", + "tslib": "^2.3.0" + } + }, + "@discordjs/collection": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@discordjs/collection/-/collection-0.2.1.tgz", + "integrity": "sha512-vhxqzzM8gkomw0TYRF3tgx7SwElzUlXT/Aa41O7mOcyN6wIJfj5JmDWaO5XGKsGSsNx7F3i5oIlrucCCWV1Nog==" + }, + "@discordjs/form-data": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@discordjs/form-data/-/form-data-3.0.1.tgz", + "integrity": "sha512-ZfFsbgEXW71Rw/6EtBdrP5VxBJy4dthyC0tpQKGKmYFImlmmrykO14Za+BiIVduwjte0jXEBlhSKf0MWbFp9Eg==", + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + } + }, + "@sapphire/async-queue": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/@sapphire/async-queue/-/async-queue-1.1.4.tgz", + "integrity": "sha512-fFrlF/uWpGOX5djw5Mu2Hnnrunao75WGey0sP0J3jnhmrJ5TAPzHYOmytD5iN/+pMxS+f+u/gezqHa9tPhRHEA==" + }, + "@sindresorhus/is": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.0.1.tgz", + "integrity": "sha512-Qm9hBEBu18wt1PO2flE7LPb30BHMQt1eQgbV76YntdNk73XZGpn3izvGTYxbGgzXKgbCjiia0uxTd3aTNQrY/g==" + }, + "@types/node": { + "version": "16.7.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.7.1.tgz", + "integrity": "sha512-ncRdc45SoYJ2H4eWU9ReDfp3vtFqDYhjOsKlFFUDEn8V1Bgr2RjYal8YT5byfadWIRluhPFU6JiDOl0H6Sl87A==" + }, + "@types/ws": { + "version": "7.4.7", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-7.4.7.tgz", + "integrity": "sha512-JQbbmxZTZehdc2iszGKs5oC3NFnjeay7mtAWrdt7qNtAVK0g19muApzAy4bm9byz79xa2ZnO/BOBC2R8RC5Lww==", + "requires": { + "@types/node": "*" + } + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" + }, + "callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==" + }, + "combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" + }, + "discord-api-types": { + "version": "0.22.0", + "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.22.0.tgz", + "integrity": "sha512-l8yD/2zRbZItUQpy7ZxBJwaLX/Bs2TGaCthRppk8Sw24LOIWg12t9JEreezPoYD0SQcC2htNNo27kYEpYW/Srg==" + }, + "discord.js": { + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/discord.js/-/discord.js-13.1.0.tgz", + "integrity": "sha512-gxO4CXKdHpqA+WKG+f5RNnd3srTDj5uFJHgOathksDE90YNq/Qijkd2WlMgTTMS6AJoEnHxI7G9eDQHCuZ+xDA==", + "requires": { + "@discordjs/builders": "^0.5.0", + "@discordjs/collection": "^0.2.1", + "@discordjs/form-data": "^3.0.1", + "@sapphire/async-queue": "^1.1.4", + "@types/ws": "^7.4.7", + "discord-api-types": "^0.22.0", + "node-fetch": "^2.6.1", + "ws": "^7.5.1" + } + }, + "dot-prop": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-6.0.1.tgz", + "integrity": "sha512-tE7ztYzXHIeyvc7N+hR3oi7FIbf/NIjVP9hmAt3yMXzrQ072/fpjGLx2GxNxGxUl5V73MEqYzioOMoVhGMJ5cA==", + "requires": { + "is-obj": "^2.0.0" + } + }, + "dotenv": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", + "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==" + }, + "is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==" + }, + "lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=" + }, + "mime-db": { + "version": "1.49.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.49.0.tgz", + "integrity": "sha512-CIc8j9URtOVApSFCQIF+VBkX1RwXp/oMMOrqdyXSBXq5RWNEsRfyj1kiRnQgmNXmHxPoFIxOroKA3zcU9P+nAA==" + }, + "mime-types": { + "version": "2.1.32", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.32.tgz", + "integrity": "sha512-hJGaVS4G4c9TSMYh2n6SQAGrC4RnfU+daP8G7cSCmaqNjiOoUY0VHCMS42pxnQmVF1GWwFhbHWn3RIxCqTmZ9A==", + "requires": { + "mime-db": "1.49.0" + } + }, + "node-fetch": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", + "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==" + }, + "ow": { + "version": "0.27.0", + "resolved": "https://registry.npmjs.org/ow/-/ow-0.27.0.tgz", + "integrity": "sha512-SGnrGUbhn4VaUGdU0EJLMwZWSupPmF46hnTRII7aCLCrqixTAC5eKo8kI4/XXf1eaaI8YEVT+3FeGNJI9himAQ==", + "requires": { + "@sindresorhus/is": "^4.0.1", + "callsites": "^3.1.0", + "dot-prop": "^6.0.1", + "lodash.isequal": "^4.5.0", + "type-fest": "^1.2.1", + "vali-date": "^1.0.0" + } + }, + "ts-mixer": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/ts-mixer/-/ts-mixer-6.0.0.tgz", + "integrity": "sha512-nXIb1fvdY5CBSrDIblLn73NW0qRDk5yJ0Sk1qPBF560OdJfQp9jhl+0tzcY09OZ9U+6GpeoI9RjwoIKFIoB9MQ==" + }, + "tslib": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + }, + "type-fest": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", + "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==" + }, + "vali-date": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/vali-date/-/vali-date-1.0.0.tgz", + "integrity": "sha1-G5BKWWCfsyjvB4E4Qgk09rhnCaY=" + }, + "ws": { + "version": "7.5.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.3.tgz", + "integrity": "sha512-kQ/dHIzuLrS6Je9+uv81ueZomEwH0qVYstcAQ4/Z93K8zeko9gtAbttJWzoC5ukqXY1PpoouV3+VSOqEAFt5wg==", + "requires": {} + } + } } diff --git a/package.json b/package.json index b6f409c..ef0074e 100644 --- a/package.json +++ b/package.json @@ -1,23 +1,23 @@ { - "name": "discord-bot", - "version": "1.0.0", - "description": "gractwo-bot is a Discord bot written in JavaScript, using node.js and discord.js.\r It has been created for and only serves the Gractwo Discord server. It is hosted using Heroku.", - "main": "index.js", - "scripts": { - "test": "echo \"Error: no test specified\" && exit 1" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/Gractwo/discord-bot.git" - }, - "author": "", - "license": "UNLICENSED", - "bugs": { - "url": "https://github.com/Gractwo/discord-bot/issues" - }, - "homepage": "https://github.com/Gractwo/discord-bot#readme", - "dependencies": { - "discord.js": "^13.1.0", - "dotenv": "^10.0.0" - } + "name": "discord-bot", + "version": "1.0.0", + "description": "gractwo-bot is a Discord bot written in JavaScript, using node.js and discord.js.\r It has been created for and only serves the Gractwo Discord server. It is hosted using Heroku.", + "main": "src/index.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/Gractwo/discord-bot.git" + }, + "author": "github.com/jakubmanczak", + "license": "UNLICENSED", + "bugs": { + "url": "https://github.com/Gractwo/discord-bot/issues" + }, + "homepage": "https://github.com/Gractwo/discord-bot#readme", + "dependencies": { + "discord.js": "^13.1.0", + "dotenv": "^10.0.0" + } } diff --git a/cfg.json b/src/cfg.json similarity index 100% rename from cfg.json rename to src/cfg.json diff --git a/src/cmds/ping.js b/src/cmds/ping.js new file mode 100644 index 0000000..5d05d32 --- /dev/null +++ b/src/cmds/ping.js @@ -0,0 +1,6 @@ +module.exports = { + name: 'ping', + execute(msg) { + msg.channel.send(`pong`); + }, +}; diff --git a/gractwo.png b/src/gractwo.png similarity index 100% rename from gractwo.png rename to src/gractwo.png diff --git a/src/index.js b/src/index.js new file mode 100644 index 0000000..c725d8c --- /dev/null +++ b/src/index.js @@ -0,0 +1,44 @@ +const { Client, Intents, Collection } = require('discord.js'); +const cfg = require('./cfg.json'); +const fs = require('fs'); +require('dotenv').config(); + +const cl = new Client({ intents: [Intents.FLAGS.GUILDS] }); +cl.cmds = new Collection(); + +const cmdsFls = fs + .readdirSync(`./src/cmds`) + .filter((file) => file.endsWith(`.js`)); +for (const Fl of cmdsFls) { + const cmd = require(`./cmds/${Fl}`); + console.log(`command: ` + cmd.name); + cl.cmds.set(cmd.name, cmd); +} + +// FIXME: messageCreate is never invoked for some reason, disabling +// literally all of the bot's functionality +cl.on('messageCreate', (msg) => { + console.log('a message has been received'); + if (!msg.content.startsWith(cfg.prefix) || msg.author.bot) return; + + const args = msg.content.slice(cfg.prefix.length).trim().split(/ +/); + const cmdName = args.shift().toLowerCase(); + + if (!cl.cmds.has(cmdName)) return; + const cmd = cl.cmds.get(cmdName); + + try { + cmd.execute(msg); + } catch (error) { + console.error(error); + message.reply(`the above error occured while trying to execute ${cmd}`); + } +}); + +cl.once('ready', () => { + console.clear(); + console.log(`bot ready; logged in as ${cl.user.tag}\n--`); + cl.user.setActivity('.ping', { type: 'LISTENING' }); +}); + +cl.login(process.env.token); From 3dedfaca25b88241841d5729cb9df692cac20bf0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakub=20Ma=C5=84czak?= <56172798+jakubmanczak@users.noreply.github.com> Date: Mon, 23 Aug 2021 16:48:02 +0200 Subject: [PATCH 04/23] fixed lack of correct intents --- src/index.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/index.js b/src/index.js index c725d8c..220cb60 100644 --- a/src/index.js +++ b/src/index.js @@ -3,7 +3,9 @@ const cfg = require('./cfg.json'); const fs = require('fs'); require('dotenv').config(); -const cl = new Client({ intents: [Intents.FLAGS.GUILDS] }); +const cl = new Client({ + intents: [Intents.FLAGS.GUILDS, Intents.FLAGS.GUILD_MESSAGES], +}); cl.cmds = new Collection(); const cmdsFls = fs @@ -15,8 +17,6 @@ for (const Fl of cmdsFls) { cl.cmds.set(cmd.name, cmd); } -// FIXME: messageCreate is never invoked for some reason, disabling -// literally all of the bot's functionality cl.on('messageCreate', (msg) => { console.log('a message has been received'); if (!msg.content.startsWith(cfg.prefix) || msg.author.bot) return; From 7659d976656097e82560a9de41e896447a06fd48 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakub=20Ma=C5=84czak?= <56172798+jakubmanczak@users.noreply.github.com> Date: Mon, 23 Aug 2021 17:07:39 +0200 Subject: [PATCH 05/23] complete error catching --- src/index.js | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/index.js b/src/index.js index 220cb60..ac8d3ca 100644 --- a/src/index.js +++ b/src/index.js @@ -18,7 +18,6 @@ for (const Fl of cmdsFls) { } cl.on('messageCreate', (msg) => { - console.log('a message has been received'); if (!msg.content.startsWith(cfg.prefix) || msg.author.bot) return; const args = msg.content.slice(cfg.prefix.length).trim().split(/ +/); @@ -30,9 +29,13 @@ cl.on('messageCreate', (msg) => { try { cmd.execute(msg); } catch (error) { - console.error(error); - message.reply(`the above error occured while trying to execute ${cmd}`); + console.error( + `msgCommand error: ${cmdName} by ${msg.author.tag}\n--\n${error}\n--` + ); + msg.reply(`An error occured while trying to execute ${cmdName}`); + return; } + console.log(`msgCommand: ${cmdName} by ${msg.author.tag}`); }); cl.once('ready', () => { From f1bec2d13396ea72edfda3fc21ca1b9435d74284 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakub=20Ma=C5=84czak?= <56172798+jakubmanczak@users.noreply.github.com> Date: Mon, 23 Aug 2021 17:30:13 +0200 Subject: [PATCH 06/23] remove hex markings --- src/cfg.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/cfg.json b/src/cfg.json index 31daa05..4212282 100644 --- a/src/cfg.json +++ b/src/cfg.json @@ -1,5 +1,5 @@ { "prefix": ".", - "hexBlue": "0x61f2ea", - "hexRed": "0xfb636b" + "hexBlue": "61f2ea", + "hexRed": "fb636b" } From 379e6a1108bfcff66cd8b3c7892d26eec572620e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakub=20Ma=C5=84czak?= <56172798+jakubmanczak@users.noreply.github.com> Date: Mon, 23 Aug 2021 17:30:41 +0200 Subject: [PATCH 07/23] add embed to ping.js & pass in args, cfg to commands --- src/cmds/ping.js | 9 ++++++++- src/index.js | 2 +- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/src/cmds/ping.js b/src/cmds/ping.js index 5d05d32..5c6fac4 100644 --- a/src/cmds/ping.js +++ b/src/cmds/ping.js @@ -1,6 +1,13 @@ module.exports = { name: 'ping', - execute(msg) { + execute(msg, args, cfg) { + const pingembed = { + color: cfg.hexBlue, + title: `ping`, + timestamp: new Date(), + description: `Pong! ${Date.now() - msg.createdTimestamp}`, + }; msg.channel.send(`pong`); + msg.channel.send({ embeds: [pingembed] }); }, }; diff --git a/src/index.js b/src/index.js index ac8d3ca..cf11de5 100644 --- a/src/index.js +++ b/src/index.js @@ -27,7 +27,7 @@ cl.on('messageCreate', (msg) => { const cmd = cl.cmds.get(cmdName); try { - cmd.execute(msg); + cmd.execute(msg, args, cfg); } catch (error) { console.error( `msgCommand error: ${cmdName} by ${msg.author.tag}\n--\n${error}\n--` From 0122e391150fd064878997aa937720ae10aa986a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakub=20Ma=C5=84czak?= <56172798+jakubmanczak@users.noreply.github.com> Date: Mon, 23 Aug 2021 17:43:40 +0200 Subject: [PATCH 08/23] scale down logo img --- src/gractwo.png | Bin 15821 -> 0 bytes src/gractwo64.png | Bin 0 -> 2526 bytes 2 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 src/gractwo.png create mode 100644 src/gractwo64.png diff --git a/src/gractwo.png b/src/gractwo.png deleted file mode 100644 index f0bf5f05c833071d9d8d0680d7deecc8e14f1c9f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15821 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 literal 0 HcmV?d00001 From 5e930e6c7682e67487603afd29ee61f8f0ad1d9e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakub=20Ma=C5=84czak?= <56172798+jakubmanczak@users.noreply.github.com> Date: Mon, 23 Aug 2021 17:56:15 +0200 Subject: [PATCH 09/23] swap local gractwo64 image to hosted ver --- src/cfg.json | 3 ++- src/gractwo64.png | Bin 2526 -> 0 bytes 2 files changed, 2 insertions(+), 1 deletion(-) delete mode 100644 src/gractwo64.png diff --git a/src/cfg.json b/src/cfg.json index 4212282..28792fe 100644 --- a/src/cfg.json +++ b/src/cfg.json @@ -1,5 +1,6 @@ { "prefix": ".", "hexBlue": "61f2ea", - "hexRed": "fb636b" + "hexRed": "fb636b", + "iconurl": "https://i.imgur.com/4AmRDyX.png" } diff --git a/src/gractwo64.png b/src/gractwo64.png deleted file mode 100644 index e569cd8b5283949b7a7811178d604681a9b90b78..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2526 zcmV<42_g20P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D33EwAK~#8N?U{dY zR96+p@4fqWlVy|LBxI8?geodhL~602<%eL$T53wgIyK{1sQE<#1Q@X+Gyb8Ic67$k zQIP@(Qg*YI*8a2=!IocxT0vWj)?aljt)&VhBm_c!l4Rez$M1c6S+neBvxEh$zR%2? zch9+Z-@EtRbI(2ZEpu>iaBy&NaBy&NaB%oPgzNjbA@z)^D#4z9TH;|4uMPD*oii*Z z@4-9&JqBX0wgpP|XelEu%K%jUg#y!M{tTm>$~YOEaTgI8s1mpi4O{HKyhmD2+l^B& zRJZDboEeJ*mzKqNucy5D3I5=NQdeh0ZBI{-@xcd3QX}VFy?Z2s++y>?g(a_Qc}y}k z05vy@=!wqVoU=Q%DhVRihbMMnCX_*x26uaoICKVnTO8BJAjWU;gtq)fi*c5pI_1lC zn}w9)D>9i?#7PzrqltpVRN~Zx#|3oL6wn(yPuvt1!CtLMOU4F>)~>B&f}Yo6Rv_YQ zJmD=Zs=TVVw`7PeyaKCWhMCuHFiv3D$0PpWy;@9*o~f~sOfJ>M?7?Y{F0mnbVLfiw zUFqNzaJSFZ^>j37F)bMxKm|I%*?3K8X+`_Bly%@)Gj%Z~V;W$fX7vHy#eEjZDgd~T)i(uD`fv$%Y z>u~?0u8qOjdmA3!<TM;1wdg?RC_}_k0X)DEETr4=4`AGzs(*=Sw1i(phc(U`51V zG9TB+BL31laV=0@g*M74X~8=_tBXmbH2_jod;5b6Tj=y(Y-I-Eg@~Kpjkf2f1;!zDiRaGu5 z5c}YR&K>cDT4uV0ycsY1mEB+zFm{Qn!Ly_Fw_24%^gU z(%H&3f5|VjVpPI`vR{Y&!C6GsQkeZ2Tt8wYTZmh?q36d`8!VOS)%|B~vVU+1qZ%OU zFGVMLP?hn}XVqOi-1>?!rFbE{;eLo+N;eYd&j>E6bJ|)%T9p#y)s?!4zOsEQ`a8>E zkf~awjQCiazx1#c#{|n1-Y{u5JfaHMXW9Z~Ya;oR4k7e?NjG7_Vkx~~R0F`ZF1kOt z4cBwF5~%Y#ykVme+B(rNjH#AIccb&mOh(h(p_Wo3wB=FVGz}Cp0MSWLWb2$omn5fNW-HyrYaDr0i)ww0HVCI-Z|KlJJ--~P})Y}E*$C;t6SZ|6o@cEK1w z^oCmAR61QfDzahyBzV+~s*C`)-+m6sgw9DpZ|mX}!NJ;|?)~uX{ zU(Qfvj3_?)*+9zZCotJ|N04LeRVP8r{zvV~iwK@I17OIf)Lrdnb)B6_2cwh*5W?YhW>VJ3W$QjD?$^x+5FOD^_pyPO4% zHa5B?leeofT;OHi+SDuPGcM3e0_ZpZXdA)5sUuW zK(1Ul`3BQ{KX#S^CBp;utvhy1C0X$uAqM>&{yJtX$rM3`y#y4T8%YL83JODYP0Ns+ z*pVFW|KXhQwv4~9jzlhB?z7wli!cSZV>FBLrVrp{@%JHHnA@vGRC1#pm zCQnW-m(dAGfpgH-i@h@!d%c&F@FHq@)ta_Ux$_4_Wr=5tOHf;^Wyuq^!1;Y``N4!; zD#-xDE1EVScm9?t8?LC2Z{MCOMNNsUtIL|&S<*#~(54Q|7;)MvCVMpk88VA9L6A1Bf{aPGQj z6hRe@ajk_1Y}HjZNd_?M*H+=hszYp;*koUL>p$&^G{|)r{D8F=kDI4bVZ3THT=pj} zFFztSZyu52rly*X=Nf|(%7w-I`LHp--g;|bdqqW5SEr<=_v|cA)=yEK0*m$Fz9d!l zSlxYkJ+jk{s$a~EzB@9pJhmJ(Nd}14t;Tv4c7Cq1JC)$r6{A3njRDg%_QJYz)z&76 zRv6)yh_1e>tmr&ZZhCU|U=SZtoNrWe0C9O< z7g-KxX^+BP>aQ}>*l!P>aID8dxK@K#>?odcGMXnAVekhql|C+Adusa5-l3~mb$fdm z`ZiycasGJ1R$fAq0VFr#27m|T>S7Y-?_FJ(=Zfyb3vPyc4I#$dV}x3t)YaFF$3$_D z+aFwl6!Q@n!OJZ3g_@p@zt(nlJjK2IB{Xp%rdWu8&%}O_NRk0OmWZG73~r?K09w7e z(C6i9<}r9SfTQbDcWCo&U46~j&Uv&gP+E%}<*SH4-B=RSVT>x=-=*piFrN$Mm&G%} zkt7*__Z4+xE!&aWGHHUX9DzilWDbb~Xjy?^iQq$(?r`gVUHzX!9f=FdzMglwyDau? zfI_%7V1nMSj>)=J5=lW&5v^aNzQ*`qg`I}w`kIJ5^aeFI8|KL~AIDbo4Osa`nCKi% zbCs$7-F+vK(g4GCO((Ez+JA+?is}rhz5=}uRxVXK(1E@Ej+`AWzt{3RmZT-1a9eB+ z(v=OE<=0>cl|U>|gNHkHAj{iiNICC+VepES9x#&O+NN7buutQBaM%#heMpVdCMXUL o4h{|u4h{|u4h{|u|LrjLFDurFO5{9Zy#N3J07*qoM6N<$f^tm5+5i9m From 73dd8774334496f9e0837a16862ef56ba49a7d3d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakub=20Ma=C5=84czak?= <56172798+jakubmanczak@users.noreply.github.com> Date: Mon, 23 Aug 2021 18:03:37 +0200 Subject: [PATCH 10/23] finalise ping cmd --- src/cmds/ping.js | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/cmds/ping.js b/src/cmds/ping.js index 5c6fac4..6e6bede 100644 --- a/src/cmds/ping.js +++ b/src/cmds/ping.js @@ -3,11 +3,16 @@ module.exports = { execute(msg, args, cfg) { const pingembed = { color: cfg.hexBlue, - title: `ping`, timestamp: new Date(), - description: `Pong! ${Date.now() - msg.createdTimestamp}`, + footer: { + text: `Komenda wywołana przez ${msg.author.tag}`, + icon_url: cfg.iconurl, + }, + title: 'Pong!', + description: `Ping jednostronny wynosi ${ + Date.now() - msg.createdTimestamp + }`, }; - msg.channel.send(`pong`); msg.channel.send({ embeds: [pingembed] }); }, }; From 14327d1feb21be029f709c7ba7f8ceb0fa66dcab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakub=20Ma=C5=84czak?= <56172798+jakubmanczak@users.noreply.github.com> Date: Mon, 23 Aug 2021 18:14:37 +0200 Subject: [PATCH 11/23] add ms. to ping body --- src/cmds/ping.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/cmds/ping.js b/src/cmds/ping.js index 6e6bede..f18f9de 100644 --- a/src/cmds/ping.js +++ b/src/cmds/ping.js @@ -5,7 +5,7 @@ module.exports = { color: cfg.hexBlue, timestamp: new Date(), footer: { - text: `Komenda wywołana przez ${msg.author.tag}`, + text: `Komenda wywołana przez ${msg.author.tag}ms.`, icon_url: cfg.iconurl, }, title: 'Pong!', From 9531fe157908f81dde027cd787f01ce06715a0e6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakub=20Ma=C5=84czak?= <56172798+jakubmanczak@users.noreply.github.com> Date: Mon, 23 Aug 2021 18:16:08 +0200 Subject: [PATCH 12/23] i am dumb --- src/cmds/ping.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/cmds/ping.js b/src/cmds/ping.js index f18f9de..cb33c68 100644 --- a/src/cmds/ping.js +++ b/src/cmds/ping.js @@ -5,13 +5,13 @@ module.exports = { color: cfg.hexBlue, timestamp: new Date(), footer: { - text: `Komenda wywołana przez ${msg.author.tag}ms.`, + text: `Komenda wywołana przez ${msg.author.tag}`, icon_url: cfg.iconurl, }, title: 'Pong!', description: `Ping jednostronny wynosi ${ Date.now() - msg.createdTimestamp - }`, + }ms.`, }; msg.channel.send({ embeds: [pingembed] }); }, From c2074d6207c951c64e6fedd106bd7208813564c6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakub=20Ma=C5=84czak?= <56172798+jakubmanczak@users.noreply.github.com> Date: Tue, 28 Sep 2021 18:24:45 +0200 Subject: [PATCH 13/23] update Procfile --- Procfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Procfile b/Procfile index 973094b..ff9643d 100644 --- a/Procfile +++ b/Procfile @@ -1 +1 @@ -worker: node index.js \ No newline at end of file +worker: node src/index.js From 36eba7e0f2227aa007939b08d07b1828545b7a3a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakub=20Ma=C5=84czak?= <56172798+jakubmanczak@users.noreply.github.com> Date: Tue, 28 Sep 2021 20:39:12 +0200 Subject: [PATCH 14/23] smort embed.js big thonking :fire: :fire: --- package-lock.json | 274 +--------------------------------------------- src/cfg.json | 78 ++++++++++++- src/cmds/embed.js | 42 +++++++ src/cmds/ping.js | 10 +- src/index.js | 33 ++++-- 5 files changed, 147 insertions(+), 290 deletions(-) create mode 100644 src/cmds/embed.js diff --git a/package-lock.json b/package-lock.json index 7f76ef6..dec36be 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,277 +1,8 @@ { "name": "discord-bot", "version": "1.0.0", - "lockfileVersion": 2, + "lockfileVersion": 1, "requires": true, - "packages": { - "": { - "version": "1.0.0", - "license": "UNLICENSED", - "dependencies": { - "discord.js": "^13.1.0", - "dotenv": "^10.0.0" - } - }, - "node_modules/@discordjs/builders": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/@discordjs/builders/-/builders-0.5.0.tgz", - "integrity": "sha512-HP5y4Rqw68o61Qv4qM5tVmDbWi4mdTFftqIOGRo33SNPpLJ1Ga3KEIR2ibKofkmsoQhEpLmopD1AZDs3cKpHuw==", - "dependencies": { - "@sindresorhus/is": "^4.0.1", - "discord-api-types": "^0.22.0", - "ow": "^0.27.0", - "ts-mixer": "^6.0.0", - "tslib": "^2.3.0" - }, - "engines": { - "node": ">=14.0.0", - "npm": ">=7.0.0" - } - }, - "node_modules/@discordjs/collection": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/@discordjs/collection/-/collection-0.2.1.tgz", - "integrity": "sha512-vhxqzzM8gkomw0TYRF3tgx7SwElzUlXT/Aa41O7mOcyN6wIJfj5JmDWaO5XGKsGSsNx7F3i5oIlrucCCWV1Nog==", - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@discordjs/form-data": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@discordjs/form-data/-/form-data-3.0.1.tgz", - "integrity": "sha512-ZfFsbgEXW71Rw/6EtBdrP5VxBJy4dthyC0tpQKGKmYFImlmmrykO14Za+BiIVduwjte0jXEBlhSKf0MWbFp9Eg==", - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/@sapphire/async-queue": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/@sapphire/async-queue/-/async-queue-1.1.4.tgz", - "integrity": "sha512-fFrlF/uWpGOX5djw5Mu2Hnnrunao75WGey0sP0J3jnhmrJ5TAPzHYOmytD5iN/+pMxS+f+u/gezqHa9tPhRHEA==", - "engines": { - "node": ">=14", - "npm": ">=6" - } - }, - "node_modules/@sindresorhus/is": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.0.1.tgz", - "integrity": "sha512-Qm9hBEBu18wt1PO2flE7LPb30BHMQt1eQgbV76YntdNk73XZGpn3izvGTYxbGgzXKgbCjiia0uxTd3aTNQrY/g==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/is?sponsor=1" - } - }, - "node_modules/@types/node": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-16.7.1.tgz", - "integrity": "sha512-ncRdc45SoYJ2H4eWU9ReDfp3vtFqDYhjOsKlFFUDEn8V1Bgr2RjYal8YT5byfadWIRluhPFU6JiDOl0H6Sl87A==" - }, - "node_modules/@types/ws": { - "version": "7.4.7", - "resolved": "https://registry.npmjs.org/@types/ws/-/ws-7.4.7.tgz", - "integrity": "sha512-JQbbmxZTZehdc2iszGKs5oC3NFnjeay7mtAWrdt7qNtAVK0g19muApzAy4bm9byz79xa2ZnO/BOBC2R8RC5Lww==", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" - }, - "node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "engines": { - "node": ">=6" - } - }, - "node_modules/combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dependencies": { - "delayed-stream": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/discord-api-types": { - "version": "0.22.0", - "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.22.0.tgz", - "integrity": "sha512-l8yD/2zRbZItUQpy7ZxBJwaLX/Bs2TGaCthRppk8Sw24LOIWg12t9JEreezPoYD0SQcC2htNNo27kYEpYW/Srg==", - "engines": { - "node": ">=12" - } - }, - "node_modules/discord.js": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/discord.js/-/discord.js-13.1.0.tgz", - "integrity": "sha512-gxO4CXKdHpqA+WKG+f5RNnd3srTDj5uFJHgOathksDE90YNq/Qijkd2WlMgTTMS6AJoEnHxI7G9eDQHCuZ+xDA==", - "dependencies": { - "@discordjs/builders": "^0.5.0", - "@discordjs/collection": "^0.2.1", - "@discordjs/form-data": "^3.0.1", - "@sapphire/async-queue": "^1.1.4", - "@types/ws": "^7.4.7", - "discord-api-types": "^0.22.0", - "node-fetch": "^2.6.1", - "ws": "^7.5.1" - }, - "engines": { - "node": ">=16.6.0", - "npm": ">=7.0.0" - } - }, - "node_modules/dot-prop": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-6.0.1.tgz", - "integrity": "sha512-tE7ztYzXHIeyvc7N+hR3oi7FIbf/NIjVP9hmAt3yMXzrQ072/fpjGLx2GxNxGxUl5V73MEqYzioOMoVhGMJ5cA==", - "dependencies": { - "is-obj": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/dotenv": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", - "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==", - "engines": { - "node": ">=10" - } - }, - "node_modules/is-obj": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", - "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", - "engines": { - "node": ">=8" - } - }, - "node_modules/lodash.isequal": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", - "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=" - }, - "node_modules/mime-db": { - "version": "1.49.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.49.0.tgz", - "integrity": "sha512-CIc8j9URtOVApSFCQIF+VBkX1RwXp/oMMOrqdyXSBXq5RWNEsRfyj1kiRnQgmNXmHxPoFIxOroKA3zcU9P+nAA==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime-types": { - "version": "2.1.32", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.32.tgz", - "integrity": "sha512-hJGaVS4G4c9TSMYh2n6SQAGrC4RnfU+daP8G7cSCmaqNjiOoUY0VHCMS42pxnQmVF1GWwFhbHWn3RIxCqTmZ9A==", - "dependencies": { - "mime-db": "1.49.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/node-fetch": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", - "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==", - "engines": { - "node": "4.x || >=6.0.0" - } - }, - "node_modules/ow": { - "version": "0.27.0", - "resolved": "https://registry.npmjs.org/ow/-/ow-0.27.0.tgz", - "integrity": "sha512-SGnrGUbhn4VaUGdU0EJLMwZWSupPmF46hnTRII7aCLCrqixTAC5eKo8kI4/XXf1eaaI8YEVT+3FeGNJI9himAQ==", - "dependencies": { - "@sindresorhus/is": "^4.0.1", - "callsites": "^3.1.0", - "dot-prop": "^6.0.1", - "lodash.isequal": "^4.5.0", - "type-fest": "^1.2.1", - "vali-date": "^1.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ts-mixer": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/ts-mixer/-/ts-mixer-6.0.0.tgz", - "integrity": "sha512-nXIb1fvdY5CBSrDIblLn73NW0qRDk5yJ0Sk1qPBF560OdJfQp9jhl+0tzcY09OZ9U+6GpeoI9RjwoIKFIoB9MQ==" - }, - "node_modules/tslib": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" - }, - "node_modules/type-fest": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", - "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/vali-date": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/vali-date/-/vali-date-1.0.0.tgz", - "integrity": "sha1-G5BKWWCfsyjvB4E4Qgk09rhnCaY=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ws": { - "version": "7.5.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.3.tgz", - "integrity": "sha512-kQ/dHIzuLrS6Je9+uv81ueZomEwH0qVYstcAQ4/Z93K8zeko9gtAbttJWzoC5ukqXY1PpoouV3+VSOqEAFt5wg==", - "engines": { - "node": ">=8.3.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - } - }, "dependencies": { "@discordjs/builders": { "version": "0.5.0", @@ -443,8 +174,7 @@ "ws": { "version": "7.5.3", "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.3.tgz", - "integrity": "sha512-kQ/dHIzuLrS6Je9+uv81ueZomEwH0qVYstcAQ4/Z93K8zeko9gtAbttJWzoC5ukqXY1PpoouV3+VSOqEAFt5wg==", - "requires": {} + "integrity": "sha512-kQ/dHIzuLrS6Je9+uv81ueZomEwH0qVYstcAQ4/Z93K8zeko9gtAbttJWzoC5ukqXY1PpoouV3+VSOqEAFt5wg==" } } } diff --git a/src/cfg.json b/src/cfg.json index 28792fe..17ab00d 100644 --- a/src/cfg.json +++ b/src/cfg.json @@ -2,5 +2,81 @@ "prefix": ".", "hexBlue": "61f2ea", "hexRed": "fb636b", - "iconurl": "https://i.imgur.com/4AmRDyX.png" + "iconurl": "https://i.imgur.com/4AmRDyX.png", + "embedFields": { + "witaj": [ + { + "name": "Zasady", + "value": "Zasady serwera są spisane na kanale `regulamin`. Pamiętajcie, by tam zajrzeć." + }, + { + "name": "Gractwo WWW", + "value": "http://gractwo.pl", + "inline": true + }, + { + "name": "Gractwo DISCORD", + "value": "http://gractwo.pl/discord", + "inline": true + }, + { + "name": "Gractwo TWITTER", + "value": "http://gractwo.pl/twitter", + "inline": true + }, + { + "name": "Gractwo YOUTUBE", + "value": "http://gractwo.pl/youtube", + "inline": true + }, + { + "name": "Gractwo GITHUB", + "value": "http://gractwo.pl/github", + "inline": true + }, + { + "name": "Gractwo FACEBOOK", + "value": "http://gractwo.pl/fb", + "inline": true + } + ], + "regulamin": [ + { + "name": "§1 Szacunek", + "value": "Na naszym serwerze obowiązuje szacunek do innych osób podczas niesatyrycznej dyskusji." + }, + { + "name": "§2 Spam / Trolling", + "value": "Jeżeli będziesz bezużytecznie spamować lub nieprzyjmenie się zachowywać zostaniesz zbanowany." + }, + { + "name": "§3 Shitposting", + "value": "Kanał #shitposting jest najbardziej wyluzowanym kanałem na naszym serwerze. Nie oznacza to jednak, że nie jest monitorowany. Jeżeli czujesz, że rzecz którą chcesz tam umieścić jest nadzwyczajnie kontrowersyjna, zastanów się dwa razy przed wciśnięciem Enter." + }, + { + "name": "§4 Poprawne Kanały", + "value": "Rozmowy na dany temat powinny toczyć się w kanałach do tego przeznaczonych." + }, + { + "name": "§5 Memy i Gify", + "value": "Memy i Gify nie są zbyt przyjemne dla oka bez kontekstu. Najlepiej jest nie postować ich, jeżeli nie pasują do prowadzonej aktualnie dyskusji." + }, + { + "name": "§6 Reklamy", + "value": "Zakaz reklam bez zezwolenia moderatora lub administratora. Pozwolenia na reklamę muszą być wydane przed jej zamieszczeniem." + }, + { + "name": "§7 Przestrzeganie Regulaminu", + "value": "Przestrzeganie regulaminu jest obowiązkowe, a to że go ktoś nie przeczytał nic nie zmienia." + }, + { + "name": "§8 Obcowanie z botem", + "value": "Próby intencjonalnego łamania bota nie są mile widziane, tak jak nadużywanie go w celach spamu kanałów." + }, + { + "name": "§9 Warunki Użytkowania Discord (ToS)", + "value": "Nasz serwer, jak każdy inny, musi przestrzegać zasad zapisanych w warunkach użytkowania Discorda. Przypominamy o nich, bo choć nie są zbyt restrykcyjne, nie pozwalają na kilka określonych rzeczy." + } + ] + } } diff --git a/src/cmds/embed.js b/src/cmds/embed.js new file mode 100644 index 0000000..c88e3d8 --- /dev/null +++ b/src/cmds/embed.js @@ -0,0 +1,42 @@ +module.exports = { + name: 'embed', + execute(cl, msg, args) { + const embed = { + color: cl.cfg.hexBlue, + timestamp: new Date(), + footer: { + text: `Komenda wywołana przez ${msg.author.tag}`, + icon_url: cl.cfg.iconurl, + }, + }; + switch (args[0]) { + case 'witaj': + embed.title = 'Witajcie w Gractwie!'; + embed.description = + 'Jesteśmy grupą ludzi których kręcą gry. Proste, nie?\nSerwer ten miał wcześniej tematykę Team Fortressową.'; + embed.footer.text = '#witaj'; + embed.fields = cl.cfg.embedFields.witaj; + readyMsg = { embeds: [embed] }; + break; + case 'regulamin': + embed.title = 'Regulamin'; + embed.description = + 'Regulamin naszego serwera składa się z tego, co następuje:'; + embed.footer.text = `Ostatnio zaktualizowany`; + embed.fields = cl.cfg.embedFields.regulamin; + readyMsg = { embeds: [embed] }; + break; + case 'rolki': + embed.title = 'Rolki'; + embed.description = '#rolki jest kanałem do przyznawania sobie ról.'; + readyMsg = { embeds: [embed] /*components: [rows]*/ }; + break; + default: + embed.title = `zły parametr: ` + args[0]; + embed.color = cl.cfg.hexRed; + readyMsg = { embeds: [embed] }; + break; + } + msg.channel.send(readyMsg); + }, +}; diff --git a/src/cmds/ping.js b/src/cmds/ping.js index cb33c68..28cc46d 100644 --- a/src/cmds/ping.js +++ b/src/cmds/ping.js @@ -1,18 +1,18 @@ module.exports = { name: 'ping', - execute(msg, args, cfg) { - const pingembed = { - color: cfg.hexBlue, + execute(cl, msg) { + const embed = { + color: cl.cfg.hexBlue, timestamp: new Date(), footer: { text: `Komenda wywołana przez ${msg.author.tag}`, - icon_url: cfg.iconurl, + icon_url: cl.cfg.iconurl, }, title: 'Pong!', description: `Ping jednostronny wynosi ${ Date.now() - msg.createdTimestamp }ms.`, }; - msg.channel.send({ embeds: [pingembed] }); + msg.channel.send({ embeds: [embed] }); }, }; diff --git a/src/index.js b/src/index.js index cf11de5..d158e7e 100644 --- a/src/index.js +++ b/src/index.js @@ -1,12 +1,15 @@ -const { Client, Intents, Collection } = require('discord.js'); -const cfg = require('./cfg.json'); +const discordjs = require('discord.js'); const fs = require('fs'); require('dotenv').config(); -const cl = new Client({ - intents: [Intents.FLAGS.GUILDS, Intents.FLAGS.GUILD_MESSAGES], +const cl = new discordjs.Client({ + intents: [ + discordjs.Intents.FLAGS.GUILDS, + discordjs.Intents.FLAGS.GUILD_MESSAGES, + ], }); -cl.cmds = new Collection(); +cl.cfg = require('./cfg.json'); +cl.cmds = new discordjs.Collection(); const cmdsFls = fs .readdirSync(`./src/cmds`) @@ -18,24 +21,26 @@ for (const Fl of cmdsFls) { } cl.on('messageCreate', (msg) => { - if (!msg.content.startsWith(cfg.prefix) || msg.author.bot) return; + if (!msg.content.startsWith(cl.cfg.prefix) || msg.author.bot) return; - const args = msg.content.slice(cfg.prefix.length).trim().split(/ +/); + const args = msg.content.slice(cl.cfg.prefix.length).trim().split(/ +/); const cmdName = args.shift().toLowerCase(); if (!cl.cmds.has(cmdName)) return; const cmd = cl.cmds.get(cmdName); try { - cmd.execute(msg, args, cfg); + cmd.execute(cl, msg, args); } catch (error) { console.error( - `msgCommand error: ${cmdName} by ${msg.author.tag}\n--\n${error}\n--` + `msgCommand error: ${cmdName} with args ${args} by ${msg.author.tag}\n--\n${error}\n--` + ); + msg.reply( + `An error occured while trying to execute ${cmdName} with args ${args}` ); - msg.reply(`An error occured while trying to execute ${cmdName}`); return; } - console.log(`msgCommand: ${cmdName} by ${msg.author.tag}`); + console.log(`msgCommand: ${cmdName + args} by ${msg.author.tag}`); }); cl.once('ready', () => { @@ -44,4 +49,8 @@ cl.once('ready', () => { cl.user.setActivity('.ping', { type: 'LISTENING' }); }); -cl.login(process.env.token); +cl.login(process.env.token); // here comes the boooy +// hello boy +// welcome +// there he is +// he is here From a73bd60373c6e6952a75521972877326775103d6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakub=20Ma=C5=84czak?= <56172798+jakubmanczak@users.noreply.github.com> Date: Tue, 28 Sep 2021 21:02:35 +0200 Subject: [PATCH 15/23] add .regulamin cmd --- src/cmds/regulamin.js | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 src/cmds/regulamin.js diff --git a/src/cmds/regulamin.js b/src/cmds/regulamin.js new file mode 100644 index 0000000..c1cb48d --- /dev/null +++ b/src/cmds/regulamin.js @@ -0,0 +1,17 @@ +module.exports = { + name: 'regulamin', + execute(cl, msg) { + const embed = { + color: cl.cfg.hexBlue, + timestamp: new Date(), + footer: { + text: `Komenda wywołana przez ${msg.author.tag}`, + icon_url: cl.cfg.iconurl, + }, + title: 'Regulamin', + description: 'Regulamin naszego serwera składa się z tego, co następuje:', + fields: cl.cfg.embedFields.regulamin, + }; + msg.channel.send({ embeds: [embed] }); + }, +}; From 9719d5d5e5ccf65db8fbf62e8f8a3a1259dfa240 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakub=20Ma=C5=84czak?= <56172798+jakubmanczak@users.noreply.github.com> Date: Tue, 28 Sep 2021 22:33:57 +0200 Subject: [PATCH 16/23] add auth todo --- src/cmds/embed.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/cmds/embed.js b/src/cmds/embed.js index c88e3d8..fa6350c 100644 --- a/src/cmds/embed.js +++ b/src/cmds/embed.js @@ -1,6 +1,8 @@ module.exports = { name: 'embed', execute(cl, msg, args) { + // TODO: add a permissions check here to make sure nobody can spawn msgs + // not intended outside of specific scenarios const embed = { color: cl.cfg.hexBlue, timestamp: new Date(), From d2847d98e6c7095858a3df4c2a59276229da6fd7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakub=20Ma=C5=84czak?= <56172798+jakubmanczak@users.noreply.github.com> Date: Tue, 28 Sep 2021 22:34:10 +0200 Subject: [PATCH 17/23] add .pomoc stub --- src/cfg.json | 3 ++- src/cmds/pomoc.js | 16 ++++++++++++++++ src/index.js | 2 +- 3 files changed, 19 insertions(+), 2 deletions(-) create mode 100644 src/cmds/pomoc.js diff --git a/src/cfg.json b/src/cfg.json index 17ab00d..644367c 100644 --- a/src/cfg.json +++ b/src/cfg.json @@ -77,6 +77,7 @@ "name": "§9 Warunki Użytkowania Discord (ToS)", "value": "Nasz serwer, jak każdy inny, musi przestrzegać zasad zapisanych w warunkach użytkowania Discorda. Przypominamy o nich, bo choć nie są zbyt restrykcyjne, nie pozwalają na kilka określonych rzeczy." } - ] + ], + "pomocDesc": "Komenda objaśniająca bota i jego zastosowanie, a także dostępne komendy.\n\nBot Gractwa funkcjonuje jako własne rozwiązanie na problemy z administrowaniem serwera Discord. Umożliwia między innymi samo-nadawanie rolek od gier, lub odsłuchiwanie muzyki.\n\nPoniżej znajduje się lista dostępnych komend:" } } diff --git a/src/cmds/pomoc.js b/src/cmds/pomoc.js new file mode 100644 index 0000000..5dac55c --- /dev/null +++ b/src/cmds/pomoc.js @@ -0,0 +1,16 @@ +module.exports = { + name: 'pomoc', + execute(cl, msg) { + const embed = { + color: cl.cfg.hexBlue, + timestamp: new Date(), + footer: { + text: `Komenda wywołana przez ${msg.author.tag}`, + icon_url: cl.cfg.iconurl, + }, + title: 'Pomoc!', + description: cl.cfg.embedFields.pomocDesc, + }; + msg.channel.send({ embeds: [embed] }); + }, +}; diff --git a/src/index.js b/src/index.js index d158e7e..cc9a65c 100644 --- a/src/index.js +++ b/src/index.js @@ -46,7 +46,7 @@ cl.on('messageCreate', (msg) => { cl.once('ready', () => { console.clear(); console.log(`bot ready; logged in as ${cl.user.tag}\n--`); - cl.user.setActivity('.ping', { type: 'LISTENING' }); + cl.user.setActivity('.pomoc', { type: 'LISTENING' }); }); cl.login(process.env.token); // here comes the boooy From 3a61296ff63450514cd99388f64e274b7870dc85 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakub=20Ma=C5=84czak?= <56172798+jakubmanczak@users.noreply.github.com> Date: Sun, 3 Oct 2021 12:48:57 +0200 Subject: [PATCH 18/23] add rolesList to cfg --- src/cfg.json | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/cfg.json b/src/cfg.json index 644367c..37e9c69 100644 --- a/src/cfg.json +++ b/src/cfg.json @@ -3,6 +3,15 @@ "hexBlue": "61f2ea", "hexRed": "fb636b", "iconurl": "https://i.imgur.com/4AmRDyX.png", + "rolesList": [ + "tf2", + "liga", + "csgo", + "minecraft", + "rainbow-six", + "apex", + "genshin" + ], "embedFields": { "witaj": [ { From 270fcfa814cd3b8e4e6680fa2c19370af9fc663d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakub=20Ma=C5=84czak?= <56172798+jakubmanczak@users.noreply.github.com> Date: Sun, 3 Oct 2021 14:03:21 +0200 Subject: [PATCH 19/23] stachu did the rolesList work Co-authored-by: BoberITman --- src/cmds/embed.js | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/src/cmds/embed.js b/src/cmds/embed.js index fa6350c..edbdcb4 100644 --- a/src/cmds/embed.js +++ b/src/cmds/embed.js @@ -1,3 +1,5 @@ +const { MessageActionRow, MessageButton } = require('discord.js'); + module.exports = { name: 'embed', execute(cl, msg, args) { @@ -31,7 +33,31 @@ module.exports = { case 'rolki': embed.title = 'Rolki'; embed.description = '#rolki jest kanałem do przyznawania sobie ról.'; - readyMsg = { embeds: [embed] /*components: [rows]*/ }; + embed.footer.text = '#rolki'; + // code responsible for making lists of buttons out of cl.cfg.rolesList + // & including them in the readyMsg + let i = 1, + l = 0; + let btnList = []; + while ( + cl.cfg.rolesList.length / 5 + + (cl.cfg.rolesList.length % 5 != 0 ? 1 : 0) >= + i + ) { + let btnRow = new MessageActionRow(); + for (l; l <= 5 * i - 1 && cl.cfg.rolesList[l] != undefined; l++) { + btnRow.addComponents( + new MessageButton() + .setCustomId(cl.cfg.rolesList[l]) + .setLabel(`rolka ${cl.cfg.rolesList[l]}`) + .setStyle('SECONDARY') + ); + } + btnList.push(btnRow); + console.log(btnList); + i++; + } + readyMsg = { embeds: [embed], components: btnList }; break; default: embed.title = `zły parametr: ` + args[0]; From 7af5d661e92fd33e374a55f42c77c4562be58728 Mon Sep 17 00:00:00 2001 From: Stanislaw <62724833+BoberITman@users.noreply.github.com> Date: Mon, 4 Oct 2021 19:58:46 +0200 Subject: [PATCH 20/23] Rolki --- src/cfg.json | 1 + src/cmds/embed.js | 30 +++++++++++++++++++++++++++--- 2 files changed, 28 insertions(+), 3 deletions(-) diff --git a/src/cfg.json b/src/cfg.json index 37e9c69..728fe30 100644 --- a/src/cfg.json +++ b/src/cfg.json @@ -3,6 +3,7 @@ "hexBlue": "61f2ea", "hexRed": "fb636b", "iconurl": "https://i.imgur.com/4AmRDyX.png", + "timeout": 4000, "rolesList": [ "tf2", "liga", diff --git a/src/cmds/embed.js b/src/cmds/embed.js index edbdcb4..69b253a 100644 --- a/src/cmds/embed.js +++ b/src/cmds/embed.js @@ -1,4 +1,4 @@ -const { MessageActionRow, MessageButton } = require('discord.js'); +const { MessageActionRow, MessageButton, ButtonInteraction, Interaction, Client } = require('discord.js'); module.exports = { name: 'embed', @@ -58,13 +58,37 @@ module.exports = { i++; } readyMsg = { embeds: [embed], components: btnList }; - break; - default: + //Buttons fukken works + + break; + default: embed.title = `zły parametr: ` + args[0]; embed.color = cl.cfg.hexRed; readyMsg = { embeds: [embed] }; break; } + msg.channel.send(readyMsg); + if(args[0] === "rolki") + { + cl.on('interactionCreate', inter => { + if(!inter.isButton()) return; + const role = inter.member.guild.roles.cache.find((role) => role.name == inter.customId); + if(inter.member.roles.cache.has(role)) + { + inter.member.roles.add(role) + inter.reply("Gratulacje, dodalismy ci tą bezużyteczną rangę",{timeout:cl.cfg.timeout}) + .then (inter.deleteReply()) + } + else + { + inter.member.roles.remove(role) + inter.reply("Gratulacje, odebraliśmy ci tą bezużyteczną rangę",{timeout:cl.cfg.timeout}) + .then (inter.deleteReply()) + } + } + ) + } + }, }; From 11ac4bbff96f698c15730d1bdc61dacea7c9c57d Mon Sep 17 00:00:00 2001 From: Stanislaw <62724833+BoberITman@users.noreply.github.com> Date: Mon, 4 Oct 2021 21:17:04 +0200 Subject: [PATCH 21/23] Rolki errata --- .gitignore | 3 +- package-lock.json | 2367 ++++++++++++++++++++++++++++++++++++++++++++- package.json | 3 +- src/cmds/embed.js | 5 +- 4 files changed, 2360 insertions(+), 18 deletions(-) diff --git a/.gitignore b/.gitignore index 7af7f04..8f5ca7e 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ /node_modules -.env \ No newline at end of file +.env +package-lock.json diff --git a/package-lock.json b/package-lock.json index dec36be..fce047b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,8 +1,1458 @@ { "name": "discord-bot", "version": "1.0.0", - "lockfileVersion": 1, + "lockfileVersion": 2, "requires": true, + "packages": { + "": { + "name": "discord-bot", + "version": "1.0.0", + "license": "UNLICENSED", + "dependencies": { + "discord.js": "^13.1.0", + "dotenv": "^10.0.0", + "nodemon": "^2.0.13" + } + }, + "node_modules/@discordjs/builders": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@discordjs/builders/-/builders-0.5.0.tgz", + "integrity": "sha512-HP5y4Rqw68o61Qv4qM5tVmDbWi4mdTFftqIOGRo33SNPpLJ1Ga3KEIR2ibKofkmsoQhEpLmopD1AZDs3cKpHuw==", + "dependencies": { + "@sindresorhus/is": "^4.0.1", + "discord-api-types": "^0.22.0", + "ow": "^0.27.0", + "ts-mixer": "^6.0.0", + "tslib": "^2.3.0" + }, + "engines": { + "node": ">=14.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/@discordjs/collection": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@discordjs/collection/-/collection-0.2.1.tgz", + "integrity": "sha512-vhxqzzM8gkomw0TYRF3tgx7SwElzUlXT/Aa41O7mOcyN6wIJfj5JmDWaO5XGKsGSsNx7F3i5oIlrucCCWV1Nog==", + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@discordjs/form-data": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@discordjs/form-data/-/form-data-3.0.1.tgz", + "integrity": "sha512-ZfFsbgEXW71Rw/6EtBdrP5VxBJy4dthyC0tpQKGKmYFImlmmrykO14Za+BiIVduwjte0jXEBlhSKf0MWbFp9Eg==", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@sapphire/async-queue": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/@sapphire/async-queue/-/async-queue-1.1.4.tgz", + "integrity": "sha512-fFrlF/uWpGOX5djw5Mu2Hnnrunao75WGey0sP0J3jnhmrJ5TAPzHYOmytD5iN/+pMxS+f+u/gezqHa9tPhRHEA==", + "engines": { + "node": ">=14", + "npm": ">=6" + } + }, + "node_modules/@sindresorhus/is": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.2.0.tgz", + "integrity": "sha512-VkE3KLBmJwcCaVARtQpfuKcKv8gcBmUubrfHGF84dXuuW6jgsRYxPtzcIhPyK9WAPpRt2/xY6zkD9MnRaJzSyw==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/is?sponsor=1" + } + }, + "node_modules/@szmarczak/http-timer": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", + "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", + "dependencies": { + "defer-to-connect": "^1.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@types/node": { + "version": "16.10.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.10.1.tgz", + "integrity": "sha512-4/Z9DMPKFexZj/Gn3LylFgamNKHm4K3QDi0gz9B26Uk0c8izYf97B5fxfpspMNkWlFupblKM/nV8+NA9Ffvr+w==" + }, + "node_modules/@types/ws": { + "version": "7.4.7", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-7.4.7.tgz", + "integrity": "sha512-JQbbmxZTZehdc2iszGKs5oC3NFnjeay7mtAWrdt7qNtAVK0g19muApzAy4bm9byz79xa2ZnO/BOBC2R8RC5Lww==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" + }, + "node_modules/ansi-align": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", + "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", + "dependencies": { + "string-width": "^4.1.0" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/anymatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", + "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/boxen": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.1.2.tgz", + "integrity": "sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==", + "dependencies": { + "ansi-align": "^3.0.0", + "camelcase": "^6.2.0", + "chalk": "^4.1.0", + "cli-boxes": "^2.2.1", + "string-width": "^4.2.2", + "type-fest": "^0.20.2", + "widest-line": "^3.1.0", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/boxen/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cacheable-request": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", + "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", + "dependencies": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^3.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^4.1.0", + "responselike": "^1.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cacheable-request/node_modules/get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cacheable-request/node_modules/lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.2.0.tgz", + "integrity": "sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/chalk/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/chalk/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/chokidar": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.2.tgz", + "integrity": "sha512-ekGhOnNVPgT77r4K/U3GDhu+FQ2S8TnK/s2KbIGXi0SZWuwkZ2QNyfWdZW+TVfn84DpEP7rLeCt2UI6bJ8GwbQ==", + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/ci-info": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", + "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==" + }, + "node_modules/cli-boxes": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", + "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==", + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/clone-response": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", + "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=", + "dependencies": { + "mimic-response": "^1.0.0" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "node_modules/configstore": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", + "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", + "dependencies": { + "dot-prop": "^5.2.0", + "graceful-fs": "^4.1.2", + "make-dir": "^3.0.0", + "unique-string": "^2.0.0", + "write-file-atomic": "^3.0.0", + "xdg-basedir": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/configstore/node_modules/dot-prop": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", + "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", + "dependencies": { + "is-obj": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/crypto-random-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", + "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/decompress-response": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", + "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", + "dependencies": { + "mimic-response": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/defer-to-connect": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", + "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==" + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/discord-api-types": { + "version": "0.22.0", + "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.22.0.tgz", + "integrity": "sha512-l8yD/2zRbZItUQpy7ZxBJwaLX/Bs2TGaCthRppk8Sw24LOIWg12t9JEreezPoYD0SQcC2htNNo27kYEpYW/Srg==", + "engines": { + "node": ">=12" + } + }, + "node_modules/discord.js": { + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/discord.js/-/discord.js-13.1.0.tgz", + "integrity": "sha512-gxO4CXKdHpqA+WKG+f5RNnd3srTDj5uFJHgOathksDE90YNq/Qijkd2WlMgTTMS6AJoEnHxI7G9eDQHCuZ+xDA==", + "dependencies": { + "@discordjs/builders": "^0.5.0", + "@discordjs/collection": "^0.2.1", + "@discordjs/form-data": "^3.0.1", + "@sapphire/async-queue": "^1.1.4", + "@types/ws": "^7.4.7", + "discord-api-types": "^0.22.0", + "node-fetch": "^2.6.1", + "ws": "^7.5.1" + }, + "engines": { + "node": ">=16.6.0", + "npm": ">=7.0.0" + } + }, + "node_modules/dot-prop": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-6.0.1.tgz", + "integrity": "sha512-tE7ztYzXHIeyvc7N+hR3oi7FIbf/NIjVP9hmAt3yMXzrQ072/fpjGLx2GxNxGxUl5V73MEqYzioOMoVhGMJ5cA==", + "dependencies": { + "is-obj": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/dotenv": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", + "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==", + "engines": { + "node": ">=10" + } + }, + "node_modules/duplexer3": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", + "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=" + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/escape-goat": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz", + "integrity": "sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/global-dirs": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.0.tgz", + "integrity": "sha512-v8ho2DS5RiCjftj1nD9NmnfaOzTdud7RRnVd9kFNOjqZbISlx5DQ+OrTkywgd0dIt7oFCvKetZSHoHcP3sDdiA==", + "dependencies": { + "ini": "2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/got": { + "version": "9.6.0", + "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", + "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", + "dependencies": { + "@sindresorhus/is": "^0.14.0", + "@szmarczak/http-timer": "^1.1.2", + "cacheable-request": "^6.0.0", + "decompress-response": "^3.3.0", + "duplexer3": "^0.1.4", + "get-stream": "^4.1.0", + "lowercase-keys": "^1.0.1", + "mimic-response": "^1.0.1", + "p-cancelable": "^1.0.0", + "to-readable-stream": "^1.0.0", + "url-parse-lax": "^3.0.0" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/got/node_modules/@sindresorhus/is": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", + "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz", + "integrity": "sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg==" + }, + "node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "engines": { + "node": ">=4" + } + }, + "node_modules/has-yarn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", + "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/http-cache-semantics": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", + "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==" + }, + "node_modules/ignore-by-default": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz", + "integrity": "sha1-SMptcvbGo68Aqa1K5odr44ieKwk=" + }, + "node_modules/import-lazy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", + "integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=", + "engines": { + "node": ">=4" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/ini": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", + "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==", + "engines": { + "node": ">=10" + } + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-ci": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", + "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", + "dependencies": { + "ci-info": "^2.0.0" + }, + "bin": { + "is-ci": "bin.js" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-installed-globally": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz", + "integrity": "sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==", + "dependencies": { + "global-dirs": "^3.0.0", + "is-path-inside": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-npm": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-5.0.0.tgz", + "integrity": "sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" + }, + "node_modules/is-yarn-global": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz", + "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==" + }, + "node_modules/json-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", + "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=" + }, + "node_modules/keyv": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", + "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", + "dependencies": { + "json-buffer": "3.0.0" + } + }, + "node_modules/latest-version": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", + "integrity": "sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==", + "dependencies": { + "package-json": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=" + }, + "node_modules/lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-dir/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/mime-db": { + "version": "1.49.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.49.0.tgz", + "integrity": "sha512-CIc8j9URtOVApSFCQIF+VBkX1RwXp/oMMOrqdyXSBXq5RWNEsRfyj1kiRnQgmNXmHxPoFIxOroKA3zcU9P+nAA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.32", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.32.tgz", + "integrity": "sha512-hJGaVS4G4c9TSMYh2n6SQAGrC4RnfU+daP8G7cSCmaqNjiOoUY0VHCMS42pxnQmVF1GWwFhbHWn3RIxCqTmZ9A==", + "dependencies": { + "mime-db": "1.49.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + }, + "node_modules/node-fetch": { + "version": "2.6.5", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.5.tgz", + "integrity": "sha512-mmlIVHJEu5rnIxgEgez6b9GgWXbkZj5YZ7fx+2r94a2E+Uirsp6HsPTPlomfdHtpt/B0cdKviwkoaM6pyvUOpQ==", + "dependencies": { + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + } + }, + "node_modules/nodemon": { + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-2.0.13.tgz", + "integrity": "sha512-UMXMpsZsv1UXUttCn6gv8eQPhn6DR4BW+txnL3IN5IHqrCwcrT/yWHfL35UsClGXknTH79r5xbu+6J1zNHuSyA==", + "hasInstallScript": true, + "dependencies": { + "chokidar": "^3.2.2", + "debug": "^3.2.6", + "ignore-by-default": "^1.0.1", + "minimatch": "^3.0.4", + "pstree.remy": "^1.1.7", + "semver": "^5.7.1", + "supports-color": "^5.5.0", + "touch": "^3.1.0", + "undefsafe": "^2.0.3", + "update-notifier": "^5.1.0" + }, + "bin": { + "nodemon": "bin/nodemon.js" + }, + "engines": { + "node": ">=8.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/nodemon" + } + }, + "node_modules/nopt": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz", + "integrity": "sha1-bd0hvSoxQXuScn3Vhfim83YI6+4=", + "dependencies": { + "abbrev": "1" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "*" + } + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-url": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", + "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/ow": { + "version": "0.27.0", + "resolved": "https://registry.npmjs.org/ow/-/ow-0.27.0.tgz", + "integrity": "sha512-SGnrGUbhn4VaUGdU0EJLMwZWSupPmF46hnTRII7aCLCrqixTAC5eKo8kI4/XXf1eaaI8YEVT+3FeGNJI9himAQ==", + "dependencies": { + "@sindresorhus/is": "^4.0.1", + "callsites": "^3.1.0", + "dot-prop": "^6.0.1", + "lodash.isequal": "^4.5.0", + "type-fest": "^1.2.1", + "vali-date": "^1.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-cancelable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", + "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", + "engines": { + "node": ">=6" + } + }, + "node_modules/package-json": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz", + "integrity": "sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==", + "dependencies": { + "got": "^9.6.0", + "registry-auth-token": "^4.0.0", + "registry-url": "^5.0.0", + "semver": "^6.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/package-json/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/picomatch": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz", + "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/prepend-http": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", + "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=", + "engines": { + "node": ">=4" + } + }, + "node_modules/pstree.remy": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/pstree.remy/-/pstree.remy-1.1.8.tgz", + "integrity": "sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w==" + }, + "node_modules/pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/pupa": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz", + "integrity": "sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==", + "dependencies": { + "escape-goat": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "dependencies": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "bin": { + "rc": "cli.js" + } + }, + "node_modules/rc/node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/registry-auth-token": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.1.tgz", + "integrity": "sha512-6gkSb4U6aWJB4SF2ZvLb76yCBjcvufXBqvvEx1HbmKPkutswjW1xNVRY0+daljIYRbogN7O0etYSlbiaEQyMyw==", + "dependencies": { + "rc": "^1.2.8" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/registry-url": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz", + "integrity": "sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==", + "dependencies": { + "rc": "^1.2.8" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/responselike": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", + "integrity": "sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=", + "dependencies": { + "lowercase-keys": "^1.0.0" + } + }, + "node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/semver-diff": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz", + "integrity": "sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==", + "dependencies": { + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/semver-diff/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/signal-exit": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.5.tgz", + "integrity": "sha512-KWcOiKeQj6ZyXx7zq4YxSMgHRlod4czeBQZrPb8OKcohcqAXShm7E20kEMle9WBt26hFcAf0qLOcp5zmY7kOqQ==" + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/to-readable-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", + "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", + "engines": { + "node": ">=6" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/touch": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/touch/-/touch-3.1.0.tgz", + "integrity": "sha512-WBx8Uy5TLtOSRtIq+M03/sKDrXCLHxwDcquSP2c43Le03/9serjQBIztjRz6FkJez9D/hleyAXTBGLwwZUw9lA==", + "dependencies": { + "nopt": "~1.0.10" + }, + "bin": { + "nodetouch": "bin/nodetouch.js" + } + }, + "node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=" + }, + "node_modules/ts-mixer": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/ts-mixer/-/ts-mixer-6.0.0.tgz", + "integrity": "sha512-nXIb1fvdY5CBSrDIblLn73NW0qRDk5yJ0Sk1qPBF560OdJfQp9jhl+0tzcY09OZ9U+6GpeoI9RjwoIKFIoB9MQ==" + }, + "node_modules/tslib": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + }, + "node_modules/type-fest": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", + "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typedarray-to-buffer": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "dependencies": { + "is-typedarray": "^1.0.0" + } + }, + "node_modules/undefsafe": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.3.tgz", + "integrity": "sha512-nrXZwwXrD/T/JXeygJqdCO6NZZ1L66HrxM/Z7mIq2oPanoN0F1nLx3lwJMu6AwJY69hdixaFQOuoYsMjE5/C2A==", + "dependencies": { + "debug": "^2.2.0" + } + }, + "node_modules/undefsafe/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/undefsafe/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/unique-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", + "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", + "dependencies": { + "crypto-random-string": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/update-notifier": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-5.1.0.tgz", + "integrity": "sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==", + "dependencies": { + "boxen": "^5.0.0", + "chalk": "^4.1.0", + "configstore": "^5.0.1", + "has-yarn": "^2.1.0", + "import-lazy": "^2.1.0", + "is-ci": "^2.0.0", + "is-installed-globally": "^0.4.0", + "is-npm": "^5.0.0", + "is-yarn-global": "^0.3.0", + "latest-version": "^5.1.0", + "pupa": "^2.1.1", + "semver": "^7.3.4", + "semver-diff": "^3.1.1", + "xdg-basedir": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/yeoman/update-notifier?sponsor=1" + } + }, + "node_modules/update-notifier/node_modules/semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/url-parse-lax": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", + "integrity": "sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=", + "dependencies": { + "prepend-http": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/vali-date": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/vali-date/-/vali-date-1.0.0.tgz", + "integrity": "sha1-G5BKWWCfsyjvB4E4Qgk09rhnCaY=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=" + }, + "node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha1-lmRU6HZUYuN2RNNib2dCzotwll0=", + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, + "node_modules/widest-line": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", + "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", + "dependencies": { + "string-width": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "node_modules/write-file-atomic": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", + "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "dependencies": { + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" + } + }, + "node_modules/ws": { + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.5.tgz", + "integrity": "sha512-BAkMFcAzl8as1G/hArkxOxq3G7pjUqQ3gzYbLL0/5zNkph70e+lCoxBGnm6AW1+/aiNeV4fnKqZ8m4GZewmH2w==", + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/xdg-basedir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", + "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } + }, "dependencies": { "@discordjs/builders": { "version": "0.5.0", @@ -37,14 +1487,22 @@ "integrity": "sha512-fFrlF/uWpGOX5djw5Mu2Hnnrunao75WGey0sP0J3jnhmrJ5TAPzHYOmytD5iN/+pMxS+f+u/gezqHa9tPhRHEA==" }, "@sindresorhus/is": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.0.1.tgz", - "integrity": "sha512-Qm9hBEBu18wt1PO2flE7LPb30BHMQt1eQgbV76YntdNk73XZGpn3izvGTYxbGgzXKgbCjiia0uxTd3aTNQrY/g==" + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.2.0.tgz", + "integrity": "sha512-VkE3KLBmJwcCaVARtQpfuKcKv8gcBmUubrfHGF84dXuuW6jgsRYxPtzcIhPyK9WAPpRt2/xY6zkD9MnRaJzSyw==" + }, + "@szmarczak/http-timer": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", + "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", + "requires": { + "defer-to-connect": "^1.0.1" + } }, "@types/node": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-16.7.1.tgz", - "integrity": "sha512-ncRdc45SoYJ2H4eWU9ReDfp3vtFqDYhjOsKlFFUDEn8V1Bgr2RjYal8YT5byfadWIRluhPFU6JiDOl0H6Sl87A==" + "version": "16.10.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.10.1.tgz", + "integrity": "sha512-4/Z9DMPKFexZj/Gn3LylFgamNKHm4K3QDi0gz9B26Uk0c8izYf97B5fxfpspMNkWlFupblKM/nV8+NA9Ffvr+w==" }, "@types/ws": { "version": "7.4.7", @@ -54,16 +1512,204 @@ "@types/node": "*" } }, + "abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" + }, + "ansi-align": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", + "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", + "requires": { + "string-width": "^4.1.0" + } + }, + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "requires": { + "color-convert": "^2.0.1" + } + }, + "anymatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", + "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + } + }, "asynckit": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" }, + "balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==" + }, + "boxen": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.1.2.tgz", + "integrity": "sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==", + "requires": { + "ansi-align": "^3.0.0", + "camelcase": "^6.2.0", + "chalk": "^4.1.0", + "cli-boxes": "^2.2.1", + "string-width": "^4.2.2", + "type-fest": "^0.20.2", + "widest-line": "^3.1.0", + "wrap-ansi": "^7.0.0" + }, + "dependencies": { + "type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==" + } + } + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "requires": { + "fill-range": "^7.0.1" + } + }, + "cacheable-request": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", + "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", + "requires": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^3.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^4.1.0", + "responselike": "^1.0.2" + }, + "dependencies": { + "get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "requires": { + "pump": "^3.0.0" + } + }, + "lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==" + } + } + }, "callsites": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==" }, + "camelcase": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.2.0.tgz", + "integrity": "sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==" + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "dependencies": { + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "chokidar": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.2.tgz", + "integrity": "sha512-ekGhOnNVPgT77r4K/U3GDhu+FQ2S8TnK/s2KbIGXi0SZWuwkZ2QNyfWdZW+TVfn84DpEP7rLeCt2UI6bJ8GwbQ==", + "requires": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "fsevents": "~2.3.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + } + }, + "ci-info": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", + "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==" + }, + "cli-boxes": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", + "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==" + }, + "clone-response": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", + "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=", + "requires": { + "mimic-response": "^1.0.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, "combined-stream": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", @@ -72,6 +1718,65 @@ "delayed-stream": "~1.0.0" } }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "configstore": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", + "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", + "requires": { + "dot-prop": "^5.2.0", + "graceful-fs": "^4.1.2", + "make-dir": "^3.0.0", + "unique-string": "^2.0.0", + "write-file-atomic": "^3.0.0", + "xdg-basedir": "^4.0.0" + }, + "dependencies": { + "dot-prop": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", + "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", + "requires": { + "is-obj": "^2.0.0" + } + } + } + }, + "crypto-random-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", + "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==" + }, + "debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "requires": { + "ms": "^2.1.1" + } + }, + "decompress-response": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", + "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", + "requires": { + "mimic-response": "^1.0.0" + } + }, + "deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==" + }, + "defer-to-connect": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", + "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==" + }, "delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", @@ -110,16 +1815,259 @@ "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==" }, + "duplexer3": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", + "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=" + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "requires": { + "once": "^1.4.0" + } + }, + "escape-goat": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz", + "integrity": "sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==" + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "optional": true + }, + "get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "requires": { + "pump": "^3.0.0" + } + }, + "glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "requires": { + "is-glob": "^4.0.1" + } + }, + "global-dirs": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.0.tgz", + "integrity": "sha512-v8ho2DS5RiCjftj1nD9NmnfaOzTdud7RRnVd9kFNOjqZbISlx5DQ+OrTkywgd0dIt7oFCvKetZSHoHcP3sDdiA==", + "requires": { + "ini": "2.0.0" + } + }, + "got": { + "version": "9.6.0", + "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", + "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", + "requires": { + "@sindresorhus/is": "^0.14.0", + "@szmarczak/http-timer": "^1.1.2", + "cacheable-request": "^6.0.0", + "decompress-response": "^3.3.0", + "duplexer3": "^0.1.4", + "get-stream": "^4.1.0", + "lowercase-keys": "^1.0.1", + "mimic-response": "^1.0.1", + "p-cancelable": "^1.0.0", + "to-readable-stream": "^1.0.0", + "url-parse-lax": "^3.0.0" + }, + "dependencies": { + "@sindresorhus/is": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", + "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==" + } + } + }, + "graceful-fs": { + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz", + "integrity": "sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg==" + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" + }, + "has-yarn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", + "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==" + }, + "http-cache-semantics": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", + "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==" + }, + "ignore-by-default": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz", + "integrity": "sha1-SMptcvbGo68Aqa1K5odr44ieKwk=" + }, + "import-lazy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", + "integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=" + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=" + }, + "ini": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", + "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==" + }, + "is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "requires": { + "binary-extensions": "^2.0.0" + } + }, + "is-ci": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", + "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", + "requires": { + "ci-info": "^2.0.0" + } + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" + }, + "is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-installed-globally": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz", + "integrity": "sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==", + "requires": { + "global-dirs": "^3.0.0", + "is-path-inside": "^3.0.2" + } + }, + "is-npm": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-5.0.0.tgz", + "integrity": "sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==" + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" + }, "is-obj": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==" }, + "is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==" + }, + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" + }, + "is-yarn-global": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz", + "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==" + }, + "json-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", + "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=" + }, + "keyv": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", + "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", + "requires": { + "json-buffer": "3.0.0" + } + }, + "latest-version": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", + "integrity": "sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==", + "requires": { + "package-json": "^6.3.0" + } + }, "lodash.isequal": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=" }, + "lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==" + }, + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "requires": { + "yallist": "^4.0.0" + } + }, + "make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "requires": { + "semver": "^6.0.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, "mime-db": { "version": "1.49.0", "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.49.0.tgz", @@ -133,10 +2081,79 @@ "mime-db": "1.49.0" } }, + "mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==" + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" + }, + "ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + }, "node-fetch": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", - "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==" + "version": "2.6.5", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.5.tgz", + "integrity": "sha512-mmlIVHJEu5rnIxgEgez6b9GgWXbkZj5YZ7fx+2r94a2E+Uirsp6HsPTPlomfdHtpt/B0cdKviwkoaM6pyvUOpQ==", + "requires": { + "whatwg-url": "^5.0.0" + } + }, + "nodemon": { + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-2.0.13.tgz", + "integrity": "sha512-UMXMpsZsv1UXUttCn6gv8eQPhn6DR4BW+txnL3IN5IHqrCwcrT/yWHfL35UsClGXknTH79r5xbu+6J1zNHuSyA==", + "requires": { + "chokidar": "^3.2.2", + "debug": "^3.2.6", + "ignore-by-default": "^1.0.1", + "minimatch": "^3.0.4", + "pstree.remy": "^1.1.7", + "semver": "^5.7.1", + "supports-color": "^5.5.0", + "touch": "^3.1.0", + "undefsafe": "^2.0.3", + "update-notifier": "^5.1.0" + } + }, + "nopt": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz", + "integrity": "sha1-bd0hvSoxQXuScn3Vhfim83YI6+4=", + "requires": { + "abbrev": "1" + } + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" + }, + "normalize-url": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", + "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==" + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "requires": { + "wrappy": "1" + } }, "ow": { "version": "0.27.0", @@ -151,6 +2168,193 @@ "vali-date": "^1.0.0" } }, + "p-cancelable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", + "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==" + }, + "package-json": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz", + "integrity": "sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==", + "requires": { + "got": "^9.6.0", + "registry-auth-token": "^4.0.0", + "registry-url": "^5.0.0", + "semver": "^6.2.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, + "picomatch": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz", + "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==" + }, + "prepend-http": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", + "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=" + }, + "pstree.remy": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/pstree.remy/-/pstree.remy-1.1.8.tgz", + "integrity": "sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w==" + }, + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "pupa": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz", + "integrity": "sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==", + "requires": { + "escape-goat": "^2.0.0" + } + }, + "rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "requires": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "dependencies": { + "ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" + } + } + }, + "readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "requires": { + "picomatch": "^2.2.1" + } + }, + "registry-auth-token": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.1.tgz", + "integrity": "sha512-6gkSb4U6aWJB4SF2ZvLb76yCBjcvufXBqvvEx1HbmKPkutswjW1xNVRY0+daljIYRbogN7O0etYSlbiaEQyMyw==", + "requires": { + "rc": "^1.2.8" + } + }, + "registry-url": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz", + "integrity": "sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==", + "requires": { + "rc": "^1.2.8" + } + }, + "responselike": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", + "integrity": "sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=", + "requires": { + "lowercase-keys": "^1.0.0" + } + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + }, + "semver-diff": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz", + "integrity": "sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==", + "requires": { + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, + "signal-exit": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.5.tgz", + "integrity": "sha512-KWcOiKeQj6ZyXx7zq4YxSMgHRlod4czeBQZrPb8OKcohcqAXShm7E20kEMle9WBt26hFcAf0qLOcp5zmY7kOqQ==" + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "requires": { + "ansi-regex": "^5.0.1" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "requires": { + "has-flag": "^3.0.0" + } + }, + "to-readable-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", + "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==" + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "requires": { + "is-number": "^7.0.0" + } + }, + "touch": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/touch/-/touch-3.1.0.tgz", + "integrity": "sha512-WBx8Uy5TLtOSRtIq+M03/sKDrXCLHxwDcquSP2c43Le03/9serjQBIztjRz6FkJez9D/hleyAXTBGLwwZUw9lA==", + "requires": { + "nopt": "~1.0.10" + } + }, + "tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=" + }, "ts-mixer": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/ts-mixer/-/ts-mixer-6.0.0.tgz", @@ -166,15 +2370,152 @@ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==" }, + "typedarray-to-buffer": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "requires": { + "is-typedarray": "^1.0.0" + } + }, + "undefsafe": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.3.tgz", + "integrity": "sha512-nrXZwwXrD/T/JXeygJqdCO6NZZ1L66HrxM/Z7mIq2oPanoN0F1nLx3lwJMu6AwJY69hdixaFQOuoYsMjE5/C2A==", + "requires": { + "debug": "^2.2.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + } + } + }, + "unique-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", + "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", + "requires": { + "crypto-random-string": "^2.0.0" + } + }, + "update-notifier": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-5.1.0.tgz", + "integrity": "sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==", + "requires": { + "boxen": "^5.0.0", + "chalk": "^4.1.0", + "configstore": "^5.0.1", + "has-yarn": "^2.1.0", + "import-lazy": "^2.1.0", + "is-ci": "^2.0.0", + "is-installed-globally": "^0.4.0", + "is-npm": "^5.0.0", + "is-yarn-global": "^0.3.0", + "latest-version": "^5.1.0", + "pupa": "^2.1.1", + "semver": "^7.3.4", + "semver-diff": "^3.1.1", + "xdg-basedir": "^4.0.0" + }, + "dependencies": { + "semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "requires": { + "lru-cache": "^6.0.0" + } + } + } + }, + "url-parse-lax": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", + "integrity": "sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=", + "requires": { + "prepend-http": "^2.0.0" + } + }, "vali-date": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/vali-date/-/vali-date-1.0.0.tgz", "integrity": "sha1-G5BKWWCfsyjvB4E4Qgk09rhnCaY=" }, + "webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=" + }, + "whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha1-lmRU6HZUYuN2RNNib2dCzotwll0=", + "requires": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, + "widest-line": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", + "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", + "requires": { + "string-width": "^4.0.0" + } + }, + "wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "write-file-atomic": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", + "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "requires": { + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" + } + }, "ws": { - "version": "7.5.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.3.tgz", - "integrity": "sha512-kQ/dHIzuLrS6Je9+uv81ueZomEwH0qVYstcAQ4/Z93K8zeko9gtAbttJWzoC5ukqXY1PpoouV3+VSOqEAFt5wg==" + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.5.tgz", + "integrity": "sha512-BAkMFcAzl8as1G/hArkxOxq3G7pjUqQ3gzYbLL0/5zNkph70e+lCoxBGnm6AW1+/aiNeV4fnKqZ8m4GZewmH2w==", + "requires": {} + }, + "xdg-basedir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", + "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==" + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" } } } diff --git a/package.json b/package.json index ef0074e..3605a4e 100644 --- a/package.json +++ b/package.json @@ -18,6 +18,7 @@ "homepage": "https://github.com/Gractwo/discord-bot#readme", "dependencies": { "discord.js": "^13.1.0", - "dotenv": "^10.0.0" + "dotenv": "^10.0.0", + "nodemon": "^2.0.13" } } diff --git a/src/cmds/embed.js b/src/cmds/embed.js index 69b253a..5eff948 100644 --- a/src/cmds/embed.js +++ b/src/cmds/embed.js @@ -58,8 +58,6 @@ module.exports = { i++; } readyMsg = { embeds: [embed], components: btnList }; - //Buttons fukken works - break; default: embed.title = `zły parametr: ` + args[0]; @@ -73,8 +71,9 @@ module.exports = { { cl.on('interactionCreate', inter => { if(!inter.isButton()) return; + if(!inter.member.guild.roles.cache.find((role) => role.name == inter.customId)) return; const role = inter.member.guild.roles.cache.find((role) => role.name == inter.customId); - if(inter.member.roles.cache.has(role)) + if(!inter.member.roles.cache.find((roles) => role)) { inter.member.roles.add(role) inter.reply("Gratulacje, dodalismy ci tą bezużyteczną rangę",{timeout:cl.cfg.timeout}) From 447263c3fd0d8bacec6056f665334c1517769cbb Mon Sep 17 00:00:00 2001 From: Stanislaw <62724833+BoberITman@users.noreply.github.com> Date: Mon, 4 Oct 2021 21:22:40 +0200 Subject: [PATCH 22/23] Rolki errata v2 --- src/cmds/embed.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/cmds/embed.js b/src/cmds/embed.js index 5eff948..e7e5aa8 100644 --- a/src/cmds/embed.js +++ b/src/cmds/embed.js @@ -73,7 +73,7 @@ module.exports = { if(!inter.isButton()) return; if(!inter.member.guild.roles.cache.find((role) => role.name == inter.customId)) return; const role = inter.member.guild.roles.cache.find((role) => role.name == inter.customId); - if(!inter.member.roles.cache.find((roles) => role)) + if(!inter.member.roles.cache.find((role) => role.name == inter.customId)) { inter.member.roles.add(role) inter.reply("Gratulacje, dodalismy ci tą bezużyteczną rangę",{timeout:cl.cfg.timeout}) From 8ea237bc4a0d12913e74e031751fd6f7117a6412 Mon Sep 17 00:00:00 2001 From: Stanislaw <62724833+BoberITman@users.noreply.github.com> Date: Mon, 4 Oct 2021 21:26:19 +0200 Subject: [PATCH 23/23] Rolki errata v3 --- src/cmds/embed.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/cmds/embed.js b/src/cmds/embed.js index e7e5aa8..140402b 100644 --- a/src/cmds/embed.js +++ b/src/cmds/embed.js @@ -71,8 +71,8 @@ module.exports = { { cl.on('interactionCreate', inter => { if(!inter.isButton()) return; - if(!inter.member.guild.roles.cache.find((role) => role.name == inter.customId)) return; const role = inter.member.guild.roles.cache.find((role) => role.name == inter.customId); + if(!role) return; if(!inter.member.roles.cache.find((role) => role.name == inter.customId)) { inter.member.roles.add(role)