diff --git a/bot/modules/claimbot.js b/bot/modules/claimbot.js index ee6b371..f08b47e 100644 --- a/bot/modules/claimbot.js +++ b/bot/modules/claimbot.js @@ -15,11 +15,11 @@ function init(discordBot_) { if (discordBot) { throw new Error('init was already called once'); } - discordBot = discordBot_; - console.log('Activating claimbot'); - discordBot.channels.get(channels[0]).send('activating claimbot'); - setInterval(announceClaims, 60 * 1000); - announceClaims(); + discordBot = discordBot_; + console.log('Activating claimbot'); + discordBot.channels.get(channels[0]).send('activating claimbot'); + setInterval(announceClaims, 60 * 1000); + announceClaims(); } function announceClaims() { diff --git a/bot/modules/releasenotes.js b/bot/modules/releasenotes.js index 4ccf471..240f636 100644 --- a/bot/modules/releasenotes.js +++ b/bot/modules/releasenotes.js @@ -5,132 +5,132 @@ let inPrivate = require('../helpers.js').inPrivate; let ChannelID = config.get('gitrelease').channel; exports.commands = [ - 'releasenotes' // command that is in this file, every command needs it own export as shown below + 'releasenotes' // command that is in this file, every command needs it own export as shown below ]; exports.releasenotes = { - usage: '', - description: 'gets current release notes from GitHub, for either Desktop or Android', - process: function(bot, msg, suffix) { - console.log("Suffix is: " + suffix); - let releaseType = suffix.toLowerCase(); - console.log("Release Type is " + releaseType); - let releaseTypePost = null; + usage: '', + description: 'gets current release notes from GitHub, for either Desktop or Android', + process: function(bot, msg, suffix) { + console.log('Suffix is: ' + suffix); + let releaseType = suffix.toLowerCase(); + console.log('Release Type is ' + releaseType); + let releaseTypePost = null; - if (releaseType === 'android post' || releaseType === 'desktop post') { - releaseTypePost = releaseType.charAt(0).toUpperCase() + releaseType.slice(1,7); - console.log('ReleaseType is ' + releaseType); - console.log('ReleaseTypePost is ' + releaseTypePost); - console.log('Post message detected ' + releaseTypePost); - } - let releaseTypeName = releaseType.charAt(0).toUpperCase() + releaseType.slice(1); - if (releaseType !== 'android' && releaseType !== 'desktop' && releaseType !== 'android post' && releaseType !== 'desktop post') { - msg.reply('Please specify which release notes to display: "desktop" or "android".'); - return; - } - const headers = { - 'Content-Type': 'application/json', - 'User-Agent': 'Super Agent/0.0.1' - }; - // Configure the request - let options; - if (releaseTypePost !== null) { - options = { - url: 'https://api.github.com/repos/lbryio/lbry-' + releaseTypePost + '/releases/latest', - method: 'GET', - headers: headers - }; - } else { - console.log('Release being sent: ' + releaseTypeName); - options = { - url: 'https://api.github.com/repos/lbryio/lbry-' + releaseTypeName + '/releases/latest', - method: 'GET', - headers: headers - }; - } - // Start the request - let message; - request(options, function(error, response, body) { - let json = JSON.parse(body); - let releasemessage = json.body; - console.log(releasemessage); - let releasename = json.name || json.tag_name; - let releasedate = json.published_at; - let releaseurl = json.html_url; - if (releasemessage.length < 2000) { - message = { - embed: { - title: '*Download ' + releasename + ' here!*', - description: releasemessage.replace('###', ''), - url: releaseurl, - color: 7976557, - timestamp: releasedate, - author: { - name: 'LBRY ' + releaseType + ' release notes for ' + releasename, - icon_url: 'https://spee.ch/b/Github-PNG-Image.png' - }, - footer: { - icon_url: 'https://spee.ch/2/pinkylbryheart.png', - text: 'LBRY ' + releaseType + ' updated ' - } - } - }; - if (inPrivate(msg)) { - msg.channel.send(message); - return; - } - if (hasPerms(msg) && suffix === 'android post' || hasPerms(msg) && suffix === 'desktop post') { - bot.channels.get(ChannelID).send(message); - } else { - msg.channel.send(msg.author + ' Release notes sent via DM'); - msg.author.send(message); - } - } else { - message = releasemessage - .trim() - .split('###') - .filter(function(n) { - return n !== ''; - }); - let embedmessages = []; - for (let i = 0; i < message.length; i++) { - if (message[i]) { - embedmessages.push({ - embed: { - description: message[i], - url: releaseurl, - color: 7976557, - timestamp: releasedate, - author: { - name: 'LBRY ' + releaseTypeName + ' release notes for ' + releasename, - icon_url: 'https://spee.ch/b/Github-PNG-Image.png' - }, - footer: { - icon_url: 'https://spee.ch/2/pinkylbryheart.png', - text: 'LBRY ' + releaseTypeName + ' updated ' - } - } - }); - if (i === 0) embedmessages[i].embed.title = '*Download ' + releasename + ' here!*'; - } - } - if (inPrivate(msg)) { - for (let i = 0; i < embedmessages.length; i++) { - msg.channel.send(embedmessages[i]); - } - return; - } - if (hasPerms(msg) && suffix === 'android post' || 'desktop post') { - for (let i = 0; i < embedmessages.length; i++) { - bot.channels.get(ChannelID).send(embedmessages[i]); - } - } else { - msg.channel.send(msg.author + ' Release notes sent via DM'); - for (let i = 0; i < embedmessages.length; i++) { - msg.author.send(embedmessages[i]); - } - } - } - }); + if (releaseType === 'android post' || releaseType === 'desktop post') { + releaseTypePost = releaseType.charAt(0).toUpperCase() + releaseType.slice(1, 7); + console.log('ReleaseType is ' + releaseType); + console.log('ReleaseTypePost is ' + releaseTypePost); + console.log('Post message detected ' + releaseTypePost); } + let releaseTypeName = releaseType.charAt(0).toUpperCase() + releaseType.slice(1); + if (releaseType !== 'android' && releaseType !== 'desktop' && releaseType !== 'android post' && releaseType !== 'desktop post') { + msg.reply('Please specify which release notes to display: "desktop" or "android".'); + return; + } + const headers = { + 'Content-Type': 'application/json', + 'User-Agent': 'Super Agent/0.0.1' + }; + // Configure the request + let options; + if (releaseTypePost !== null) { + options = { + url: 'https://api.github.com/repos/lbryio/lbry-' + releaseTypePost + '/releases/latest', + method: 'GET', + headers: headers + }; + } else { + console.log('Release being sent: ' + releaseTypeName); + options = { + url: 'https://api.github.com/repos/lbryio/lbry-' + releaseTypeName + '/releases/latest', + method: 'GET', + headers: headers + }; + } + // Start the request + let message; + request(options, function(error, response, body) { + let json = JSON.parse(body); + let releasemessage = json.body; + console.log(releasemessage); + let releasename = json.name || json.tag_name; + let releasedate = json.published_at; + let releaseurl = json.html_url; + if (releasemessage.length < 2000) { + message = { + embed: { + title: '*Download ' + releasename + ' here!*', + description: releasemessage.replace('###', ''), + url: releaseurl, + color: 7976557, + timestamp: releasedate, + author: { + name: 'LBRY ' + releaseType + ' release notes for ' + releasename, + icon_url: 'https://spee.ch/b/Github-PNG-Image.png' + }, + footer: { + icon_url: 'https://spee.ch/2/pinkylbryheart.png', + text: 'LBRY ' + releaseType + ' updated ' + } + } + }; + if (inPrivate(msg)) { + msg.channel.send(message); + return; + } + if ((hasPerms(msg) && suffix === 'android post') || (hasPerms(msg) && suffix === 'desktop post')) { + bot.channels.get(ChannelID).send(message); + } else { + msg.channel.send(msg.author + ' Release notes sent via DM'); + msg.author.send(message); + } + } else { + message = releasemessage + .trim() + .split('###') + .filter(function(n) { + return n !== ''; + }); + let embedmessages = []; + for (let i = 0; i < message.length; i++) { + if (message[i]) { + embedmessages.push({ + embed: { + description: message[i], + url: releaseurl, + color: 7976557, + timestamp: releasedate, + author: { + name: 'LBRY ' + releaseTypeName + ' release notes for ' + releasename, + icon_url: 'https://spee.ch/b/Github-PNG-Image.png' + }, + footer: { + icon_url: 'https://spee.ch/2/pinkylbryheart.png', + text: 'LBRY ' + releaseTypeName + ' updated ' + } + } + }); + if (i === 0) embedmessages[i].embed.title = '*Download ' + releasename + ' here!*'; + } + } + if (inPrivate(msg)) { + for (let i = 0; i < embedmessages.length; i++) { + msg.channel.send(embedmessages[i]); + } + return; + } + if ((hasPerms(msg) && suffix === 'android post') || 'desktop post') { + for (let i = 0; i < embedmessages.length; i++) { + bot.channels.get(ChannelID).send(embedmessages[i]); + } + } else { + msg.channel.send(msg.author + ' Release notes sent via DM'); + for (let i = 0; i < embedmessages.length; i++) { + msg.author.send(embedmessages[i]); + } + } + } + }); + } }; diff --git a/bot/modules/stats.js b/bot/modules/stats.js index dea6775..9663759 100644 --- a/bot/modules/stats.js +++ b/bot/modules/stats.js @@ -1,52 +1,52 @@ let needle = require('needle'); let statsurl = 'https://www.coingecko.com/en/coins/lbry-credits'; exports.commands = [ - 'stats' // command that is in this file, every command needs it own export as shown below + 'stats' // command that is in this file, every command needs it own export as shown below ]; exports.stats = { - usage: '', - description: 'Displays list of Current Market Statistics', - process: function(bot, msg) { - needle.get('https://api.coingecko.com/api/v3/coins/markets?vs_currency=btc&ids=lbry-credits&order=market_cap_desc&per_page=100&page=1&sparkline=false&price_change_percentage=24h%2C1h%2C7d', function(error, response) { - if (error || response.statusCode !== 200) { - msg.channel.send('coingecko API is not available'); - } else { - // console.log(response); - // console.log(response.body[0]); - let data = response.body[0]; - let rank = data.market_cap_rank; - let price_btc = Number(data.current_price); - let circulating_supply = Number(data.circulating_supply); - let total_supply = Number(data.total_supply); - let percent_change_1h = Number(data.price_change_percentage_1h_in_currency); - let percent_change_24h = Number(data.price_change_percentage_24h_in_currency); - let dt = new Date(); - let timestamp = dt.toUTCString(); - let hr_indicator = (percent_change_1h < 0) ? ':thumbsdown:' : ':thumbsup:'; - let day_indicator = (percent_change_24h < 0) ? ':thumbsdown:' : ':thumbsup:'; + usage: '', + description: 'Displays list of Current Market Statistics', + process: function(bot, msg) { + needle.get('https://api.coingecko.com/api/v3/coins/markets?vs_currency=btc&ids=lbry-credits&order=market_cap_desc&per_page=100&page=1&sparkline=false&price_change_percentage=24h%2C1h%2C7d', function(error, response) { + if (error || response.statusCode !== 200) { + msg.channel.send('coingecko API is not available'); + } else { + // console.log(response); + // console.log(response.body[0]); + let data = response.body[0]; + let rank = data.market_cap_rank; + let price_btc = Number(data.current_price); + let circulating_supply = Number(data.circulating_supply); + let total_supply = Number(data.total_supply); + let percent_change_1h = Number(data.price_change_percentage_1h_in_currency); + let percent_change_24h = Number(data.price_change_percentage_24h_in_currency); + let dt = new Date(); + let timestamp = dt.toUTCString(); + let hr_indicator = percent_change_1h < 0 ? ':thumbsdown:' : ':thumbsup:'; + let day_indicator = percent_change_24h < 0 ? ':thumbsdown:' : ':thumbsup:'; - needle.get('https://api.coingecko.com/api/v3/coins/markets?vs_currency=gbp&ids=lbry-credits&order=market_cap_desc&per_page=100&page=1&sparkline=false', function (error, response) { - if (error || response.statusCode !== 200) { - msg.channel.send('coingecko API is not available'); - } else { - data = response.body[0]; - let price_gbp = Number(data.current_price); - needle.get('https://api.coingecko.com/api/v3/coins/markets?vs_currency=eur&ids=lbry-credits&order=market_cap_desc&per_page=100&page=1&sparkline=false', function (error, response) { - if (error || response.statusCode !== 200) { - msg.channel.send('coingecko API is not available'); - } else { - data = response.body[0]; - let price_eur = Number(data.current_price); - needle.get('https://api.coingecko.com/api/v3/coins/markets?vs_currency=usd&ids=lbry-credits&order=market_cap_desc&per_page=100&page=1&sparkline=false', function (error, response) { - if (error || response.statusCode !== 200) { - msg.channel.send('coingecko API is not available'); - } else { - data = response.body[0]; - let price_usd = Number(data.current_price); - let market_cap_usd = Number(data.market_cap); - let volume24_usd = Number(data.total_volume); - let description = `**Rank: [${rank}](${statsurl})** + needle.get('https://api.coingecko.com/api/v3/coins/markets?vs_currency=gbp&ids=lbry-credits&order=market_cap_desc&per_page=100&page=1&sparkline=false', function(error, response) { + if (error || response.statusCode !== 200) { + msg.channel.send('coingecko API is not available'); + } else { + data = response.body[0]; + let price_gbp = Number(data.current_price); + needle.get('https://api.coingecko.com/api/v3/coins/markets?vs_currency=eur&ids=lbry-credits&order=market_cap_desc&per_page=100&page=1&sparkline=false', function(error, response) { + if (error || response.statusCode !== 200) { + msg.channel.send('coingecko API is not available'); + } else { + data = response.body[0]; + let price_eur = Number(data.current_price); + needle.get('https://api.coingecko.com/api/v3/coins/markets?vs_currency=usd&ids=lbry-credits&order=market_cap_desc&per_page=100&page=1&sparkline=false', function(error, response) { + if (error || response.statusCode !== 200) { + msg.channel.send('coingecko API is not available'); + } else { + data = response.body[0]; + let price_usd = Number(data.current_price); + let market_cap_usd = Number(data.market_cap); + let volume24_usd = Number(data.total_volume); + let description = `**Rank: [${rank}](${statsurl})** **Data** Market Cap: [$${numberWithCommas(market_cap_usd)}](${statsurl}) Total Supply: [${numberWithCommas(total_supply)} LBC](${statsurl}) @@ -63,47 +63,46 @@ exports.stats = { 1 Hour: [${percent_change_1h.toFixed(2)}%](${statsurl}) ${hr_indicator} 1 Day: [${percent_change_24h.toFixed(2)}%](${statsurl}) ${day_indicator}`; - const embed = { - description: description, - color: 7976557, - footer: { - text: 'Last Updated: ' + timestamp - }, - author: { - name: 'Coin Gecko Stats (LBC)', - url: statsurl, - icon_url: 'https://spee.ch/2/pinkylbryheart.png' - } - }; - msg.channel.send({embed}); - } - }); - } - }); - } + const embed = { + description: description, + color: 7976557, + footer: { + text: 'Last Updated: ' + timestamp + }, + author: { + name: 'Coin Gecko Stats (LBC)', + url: statsurl, + icon_url: 'https://spee.ch/2/pinkylbryheart.png' + } + }; + msg.channel.send({ embed }); + } }); + } + }); + } + }); - function parse_obj(obj) { - let array = []; - let prop; - for (prop in obj) { - if (obj.hasOwnProperty(prop)) { - let key = parseInt(prop, 10); - let value = obj[prop]; - if (typeof value == 'object') { - value = parse_obj(value); - } - array[key] = value; - } - } - return array; - } - - function numberWithCommas(x) { - return x.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ','); - } + function parse_obj(obj) { + let array = []; + let prop; + for (prop in obj) { + if (obj.hasOwnProperty(prop)) { + let key = parseInt(prop, 10); + let value = obj[prop]; + if (typeof value == 'object') { + value = parse_obj(value); + } + array[key] = value; } - }) - } -} + } + return array; + } + function numberWithCommas(x) { + return x.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ','); + } + } + }); + } +}; diff --git a/config/commands.json b/config/commands.json index 45fda66..5280224 100644 --- a/config/commands.json +++ b/config/commands.json @@ -31,7 +31,7 @@ } } }, - "!whitepaper": { + "!whitepaper": { "usage": "", "description": "LBRY White Paper", "operation": "send", diff --git a/package-lock.json b/package-lock.json index d283ad0..0cae191 100644 --- a/package-lock.json +++ b/package-lock.json @@ -292,7 +292,7 @@ }, "callsites": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz", + "resolved": "http://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz", "integrity": "sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA=", "dev": true }, @@ -436,9 +436,9 @@ "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==" }, "config": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/config/-/config-3.2.3.tgz", - "integrity": "sha512-pditxQzO+SkKX/2gs99YnUGEjmBVkTj2o/hGOgC0oYEU7QgLnVVDYmcSL6HiGels/8QtFJpFzi5iKYv4D0dalg==", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/config/-/config-3.2.4.tgz", + "integrity": "sha512-H1XIGfnU1EAkfjSLn9ZvYDRx9lOezDViuzLDgiJ/lMeqjYe3q6iQfpcLt2NInckJgpAeekbNhQkmnnbdEDs9rw==", "requires": { "json5": "^1.0.1" } @@ -593,7 +593,7 @@ }, "enabled": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/enabled/-/enabled-1.0.2.tgz", + "resolved": "http://registry.npmjs.org/enabled/-/enabled-1.0.2.tgz", "integrity": "sha1-ll9lE9LC0cX0ZStkouM5ZGf8L5M=", "requires": { "env-variable": "0.0.x" @@ -731,7 +731,7 @@ }, "fecha": { "version": "2.3.3", - "resolved": "https://registry.npmjs.org/fecha/-/fecha-2.3.3.tgz", + "resolved": "http://registry.npmjs.org/fecha/-/fecha-2.3.3.tgz", "integrity": "sha512-lUGBnIamTAwk4znq5BcqsDaxSmZ9nDVJaij6NvRt/Tg4R69gERA+otPKbS86ROw9nxVMw2/mp1fnaiWqbs6Sdg==" }, "file-exists": { @@ -879,20 +879,20 @@ } }, "husky": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/husky/-/husky-3.0.8.tgz", - "integrity": "sha512-HFOsgcyrX3qe/rBuqyTt+P4Gxn5P0seJmr215LAZ/vnwK3jWB3r0ck7swbzGRUbufCf9w/lgHPVbF/YXQALgfQ==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/husky/-/husky-3.1.0.tgz", + "integrity": "sha512-FJkPoHHB+6s4a+jwPqBudBDvYZsoQW5/HBuMSehC8qDiCe50kpcxeqFoDSlow+9I6wg47YxBoT3WxaURlrDIIQ==", "dev": true, "requires": { "chalk": "^2.4.2", + "ci-info": "^2.0.0", "cosmiconfig": "^5.2.1", "execa": "^1.0.0", "get-stdin": "^7.0.0", - "is-ci": "^2.0.0", "opencollective-postinstall": "^2.0.2", "pkg-dir": "^4.2.0", "please-upgrade-node": "^3.2.0", - "read-pkg": "^5.1.1", + "read-pkg": "^5.2.0", "run-node": "^1.0.0", "slash": "^3.0.0" }, @@ -921,14 +921,6 @@ "requires": { "caller-path": "^2.0.0", "resolve-from": "^3.0.0" - }, - "dependencies": { - "resolve-from": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", - "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", - "dev": true - } } }, "inherits": { @@ -977,15 +969,6 @@ "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" }, - "is-ci": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", - "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", - "dev": true, - "requires": { - "ci-info": "^2.0.0" - } - }, "is-data-descriptor": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", @@ -1298,9 +1281,9 @@ "integrity": "sha512-bV7f+6l2QigeBBZSM/6yTNq4P2fNpSWj/0e7jQcy87A8e7o2nAfP/34/2ky5Vw4B9S446EtIhodAzkFCcR4dQg==" }, "mongodb": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-3.4.0.tgz", - "integrity": "sha512-W90jm/n8F0Edm47ljkVRK9l8qGW9g8T9ZSiZWRiUP58wLhsCJCeN/JxdpVnH0CUwwAw2hITUcCo9x58udpX2Uw==", + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-3.4.1.tgz", + "integrity": "sha512-juqt5/Z42J4DcE7tG7UdVaTKmUC6zinF4yioPfpeOSNBieWSK6qCY+0tfGQcHLKrauWPDdMZVROHJOa8q2pWsA==", "requires": { "bson": "^1.1.1", "require_optional": "^1.0.1", @@ -1309,13 +1292,13 @@ } }, "mongoose": { - "version": "5.8.1", - "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-5.8.1.tgz", - "integrity": "sha512-8Cffl52cMK2iBlpLipoRKW/RdrhkxvVzXsy+xVsfbKHQBCWkFiS0T0jU4smYzomTMP4gW0sReJoRA7Gu/7VVgQ==", + "version": "5.8.3", + "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-5.8.3.tgz", + "integrity": "sha512-WnO4WJ8eZ5Hgwp11Gl2dOxkWYJe8xV7oCqDV3ZbTA7j2q1prc0lPWAd9ZK5R6OhQlp55CleEZXqXUPrZnjSEDQ==", "requires": { "bson": "~1.1.1", "kareem": "2.3.1", - "mongodb": "3.3.5", + "mongodb": "3.4.1", "mongoose-legacy-pluralize": "1.0.2", "mpath": "0.6.0", "mquery": "3.2.2", @@ -1326,17 +1309,6 @@ "sliced": "1.0.1" }, "dependencies": { - "mongodb": { - "version": "3.3.5", - "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-3.3.5.tgz", - "integrity": "sha512-6NAv5gTFdwRyVfCz+O+KDszvjpyxmZw+VlmqmqKR2GmpkeKrKFRv/ZslgTtZba2dc9JYixIf99T5Gih7TIWv7Q==", - "requires": { - "bson": "^1.1.1", - "require_optional": "^1.0.1", - "safe-buffer": "^5.1.2", - "saslprep": "^1.0.0" - } - }, "ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", @@ -1619,9 +1591,9 @@ "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=" }, "prettier": { - "version": "1.18.2", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-1.18.2.tgz", - "integrity": "sha512-OeHeMc0JhFE9idD4ZdtNibzY0+TPHSpSSb9h8FqtP+YnoZZ1sl8Vc9b1sasjfymH3SonAF4QcA2+mzHPhMvIiw==", + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-1.19.1.tgz", + "integrity": "sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew==", "dev": true }, "prism-media": { @@ -1766,22 +1738,22 @@ } }, "request-promise": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/request-promise/-/request-promise-4.2.4.tgz", - "integrity": "sha512-8wgMrvE546PzbR5WbYxUQogUnUDfM0S7QIFZMID+J73vdFARkFy+HElj4T+MWYhpXwlLp0EQ8Zoj8xUA0he4Vg==", + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/request-promise/-/request-promise-4.2.5.tgz", + "integrity": "sha512-ZgnepCykFdmpq86fKGwqntyTiUrHycALuGggpyCZwMvGaZWgxW6yagT0FHkgo5LzYvOaCNvxYwWYIjevSH1EDg==", "requires": { "bluebird": "^3.5.0", - "request-promise-core": "1.1.2", + "request-promise-core": "1.1.3", "stealthy-require": "^1.1.1", "tough-cookie": "^2.3.3" } }, "request-promise-core": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.2.tgz", - "integrity": "sha512-UHYyq1MO8GsefGEt7EprS8UrXsm1TxEvFUX1IMTuSLU2Rh7fTIdFtl8xD7JiEYiWU2dl+NYAjCTksTehQUxPag==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.3.tgz", + "integrity": "sha512-QIs2+ArIGQVp5ZYbWD5ZLCY29D5CfWizP8eWnm8FoGD1TX61veauETVQbrV60662V0oFBkrDOuaBI8XgtuyYAQ==", "requires": { - "lodash": "^4.17.11" + "lodash": "^4.17.15" } }, "require_optional": { @@ -1791,21 +1763,29 @@ "requires": { "resolve-from": "^2.0.0", "semver": "^5.1.0" + }, + "dependencies": { + "resolve-from": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-2.0.0.tgz", + "integrity": "sha1-lICrIOlP+h2egKgEx+oUdhGWa1c=" + } } }, "resolve": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.12.0.tgz", - "integrity": "sha512-B/dOmuoAik5bKcD6s6nXDCjzUKnaDvdkRyAk6rsmsKLipWj4797iothd7jmmUhWTfinVMU+wc56rYKsit2Qy4w==", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.14.1.tgz", + "integrity": "sha512-fn5Wobh4cxbLzuHaE+nphztHy43/b++4M6SsGFC2gB8uYwf0C8LcarfCz1un7UTW8OFQg9iNjZ4xpcFVGebDPg==", "dev": true, "requires": { "path-parse": "^1.0.6" } }, "resolve-from": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-2.0.0.tgz", - "integrity": "sha1-lICrIOlP+h2egKgEx+oUdhGWa1c=" + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", + "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", + "dev": true }, "resolve-url": { "version": "0.2.1", @@ -2198,7 +2178,7 @@ }, "strip-eof": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "resolved": "http://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=" }, "strip-json-comments": { diff --git a/package.json b/package.json index b32024f..99217fa 100644 --- a/package.json +++ b/package.json @@ -4,21 +4,21 @@ "bitcoin": "^3.0.1", "braces": "^2.3.1", "chrono-node": "^1.3.11", - "config": "^3.1.0", + "config": "^3.2.4", "discord-irc": "^2.8.0", "discord.js": "^11.5.1", "file-exists": "^5.0.1", "jsonfile": "^5.0.0", "jsonpath": "^1.0.1", "moment": "^2.24.0", - "mongoose": "^5.7.5", + "mongodb": "^3.4.1", + "mongoose": "^5.8.3", "needle": "^2.4.0", "numeral": "^2.0.6", "request": "^2.88.0", - "request-promise": "^4.2.4", + "request-promise": "^4.2.5", "sleep": "^6.1.0", - "wget": "^0.0.1", - "mongodb": "latest" + "wget": "^0.0.1" }, "scripts": { "prettier": "prettier --write \"{bot,.}/**/*.{js,json}\" --single-quote --print-width 240", @@ -26,8 +26,8 @@ "test": "prettier --write \"{bot,.}/**/*.{js,json}\" --single-quote --print-width 240 --list-different && npm audit && npm i" }, "devDependencies": { - "husky": "^3.0.7", - "prettier": "^1.18.2" + "husky": "^3.1.0", + "prettier": "^1.19.1" }, "name": "wunderbot-discord", "version": "1.0.5",