mirror of
https://github.com/LBRYFoundation/lbry-wunderbot.git
synced 2025-08-23 17:47:27 +00:00
Merge pull request #287 from lbryio/Coolguy3289-changes
Changes and Fixes
This commit is contained in:
commit
6a38806813
7 changed files with 265 additions and 281 deletions
|
@ -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() {
|
||||
|
|
|
@ -5,127 +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: '<desktop/android>',
|
||||
description: 'gets current release notes from GitHub, for either Desktop or Android',
|
||||
process: function(bot, msg, suffix) {
|
||||
let releaseType = suffix.toLowerCase();
|
||||
let releaseTypePost = null;
|
||||
if (releaseType === 'android post' || 'desktop post') {
|
||||
releaseTypePost = releaseType.charAt(0).toUpperCase() + releaseType.slice(1,7);
|
||||
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' || '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]);
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
usage: '<desktop/android>',
|
||||
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]);
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
};
|
||||
|
|
|
@ -33,7 +33,7 @@ exports.addrole = {
|
|||
// Checks that the allowed roles and base role against the matched role's name, since this eliminates case sensitivity issues
|
||||
if (!rolelist.allowedroles.includes(newrole.name) && !rolelist.baserole.includes(newrole.name)) return send("That role isn't one you can add yourself to! Type " + rolecmd + ' command to find out which ones are allowed.');
|
||||
// Use the matched name to check against the member's existing roles
|
||||
if (msg.member.roles.find(item => item.name === newrole.name)) return send('It seems you already have the ' + newrole.name + 'role');
|
||||
if (msg.member.roles.find(item => item.name === newrole.name)) return send('It seems you already have the ' + newrole.name + ' role');
|
||||
|
||||
// Assuming all these factors succeed, add the role
|
||||
msg.member.addRole(newrole).then(send(msg.member + ' has been added to the ' + newrole.name + ' role!'));
|
||||
|
@ -67,7 +67,7 @@ exports.delrole = {
|
|||
// Checks that the allowed roles against the matched role's name, since this eliminates case sensitivity issues
|
||||
if (!rolelist.allowedroles.includes(oldrole.name)) return send("That role isn't one you can remove yourself! If you need it removed, please ask a moderator!");
|
||||
// Use the matched name to check against the member's existing roles
|
||||
if (!msg.member.roles.find(item => item.name === oldrole.name)) return send("It seems you don't actually have the " + oldrole.name + 'role! Mission accomplished!');
|
||||
if (!msg.member.roles.find(item => item.name === oldrole.name)) return send("It seems you don't actually have the " + oldrole.name + ' role! Mission accomplished!');
|
||||
|
||||
// Assuming all these factors succeed, add the role
|
||||
msg.member.removeRole(oldrole).then(send(msg.member + ' has been removed from the ' + oldrole.name + ' role!'));
|
||||
|
@ -104,7 +104,7 @@ exports.roles = {
|
|||
},
|
||||
{
|
||||
name: 'NOTE',
|
||||
value: 'The above roles are case sensitive. The LBRYian role will be auto-added when you chose any of the available roles',
|
||||
value: 'The LBRY-Curious role will be auto-added when you chose any of the available roles',
|
||||
inline: false
|
||||
}
|
||||
],
|
||||
|
|
|
@ -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, ',');
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
};
|
||||
|
|
|
@ -31,7 +31,7 @@
|
|||
}
|
||||
}
|
||||
},
|
||||
"!whitepaper": {
|
||||
"!whitepaper": {
|
||||
"usage": "",
|
||||
"description": "LBRY White Paper",
|
||||
"operation": "send",
|
||||
|
|
108
package-lock.json
generated
108
package-lock.json
generated
|
@ -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": {
|
||||
|
|
14
package.json
14
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",
|
||||
|
|
Loading…
Add table
Reference in a new issue