Add commits cmd and hopefully fix the double db issue!

This commit is contained in:
Wessel T
2019-02-07 21:55:48 +01:00
parent 1c3add1a36
commit 083b857795
14 changed files with 152 additions and 81 deletions

View File

@@ -1,6 +1,6 @@
{
"name": "wump",
"version": "1.3.2",
"version": "1.4.0",
"displayName": "Wump",
"description": "A multi-platform bot written in Node.js",
"author": "Wessel \"wesselgame\" T <discord@go2it.eu>",
@@ -11,15 +11,15 @@
"license": "GPL-3.0",
"dependencies": {
"eris": "^0.9.0",
"js-yaml": "^3.12.0",
"js-yaml": "^3.12.1",
"larg": "^0.0.1",
"mathjs": "^5.1.2",
"moment": "^2.22.2",
"mongoose": "^5.2.17",
"mathjs": "^5.4.2",
"moment": "^2.24.0",
"mongoose": "^5.4.10",
"nabbit": "^0.0.2",
"sharp": "^0.21.3",
"table": "^5.1.0",
"vm2": "^3.6.3",
"table": "^5.2.2",
"vm2": "^3.6.10",
"wumpfetch": "^0.0.5"
},
"devDependencies": {

View File

@@ -15,6 +15,7 @@ util :
info :
stats : 0x02C2F33 # Dark but not black
guild : 0x7289DA # Blurple
commits : 0x7289DA # Blurple
avatar : 0x02C2F33 # Dark but not black
commands: 0x02C2F33 # Dark but not black

View File

@@ -51,7 +51,10 @@ info:
13 : <:dnd:362670805676720128> # Total DnD members
14 : <:offline:362670805441708032> # Total offline members
15 : <:exclamation:542368036255039509> # Invalid query
avatar : <:blueberry:506201160382939141> # User's avatar
avatar : <:blueberry:506201160382939141> # User's avatar
commits :
0 : <:wumplus:542809926414761995> # 10 most recent commits
1 : <:early:542366345795207178> # Total commits
commands :
0 : <:blueberry:506201160382939141> # Guild prefix
1 : <:spirit:332131321759399937> # More info

View File

@@ -5,12 +5,10 @@ translation :
orig : 'English (United States)' # Full language name in your language
progress : 100 # Progression of the translation (%)
translator : # Your information (can leave fields empty)
email : 'discord@go2it.eu' # Optional
website : 'https://wessel.meek.moe' # Optional
discord :
name : 'Wesselgame' # Required, can be set to "Clyde"
userid : '107130754189766656' # Required, can be set to "1"
discrim: '0498' # Required, can be set to "0001"
- name : 'Wesselgame' # Required, can be set to "Clyde"
userid : '107130754189766656' # Required, can be set to "1"
discrim: '0498' # Required, can be set to "0001"
error :
- '$[author:mention] **>** An error occurred while executing this command'
@@ -63,6 +61,9 @@ info :
stats :
fetching: '$[emoji#0] Fetching statistics, this may take some time...'
avatar : '$[emoji#0] Here''s **$[user:full]** avatar'
commits :
- '$[emoji#1] **Total commits**: [`$[commits:total]`](https://github.com/PassTheWessel/wump/commits "Click here for a list of all commits")'
- '$[emoji#0] **10 most recent commits done on [`PassTheWessel/wump`](https://github.com/PassTheWessel/wump/)**: $[commits:list]'
commands:
multi :
- '$[emoji#0] The prefix for **$[guild:name]** is `$[guild:prefix]`'

View File

@@ -5,10 +5,8 @@ translation :
orig : 'Nederlands' # Full language name in your language
progress : 100 # Progression of the translation (%)
translator : # Your information (can leave fields empty)
email : 'discord@go2it.eu' # Optional
website : 'https://wessel.meek.moe' # Optional
discord :
name : 'Wesselgame' # Required, can be set to "Clyde"
- name : 'Wesselgame' # Required, can be set to "Clyde"
userid : '107130754189766656' # Required, can be set to "1"
discrim: '0498' # Required, can be set to "0001"

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

View File

@@ -22,6 +22,9 @@ module.exports = class Locale extends DiscordCommand {
}
async execute(msg, args, user, guild) {
if (!user || user === null) user = await this.bot.m.connection.collection('dUsers').findOne({ userId: msg.author.id });
if (!guild || guild === null) guild = await this.bot.m.connection.collection('dGuilds').findOne({ guildId: msg.channel.guild.id });
if (args.join(' ').includes('-u') || args.join(' ').includes('--user')) {
for (let i = 0; i < args.length; i++) !this.bot.locales.has(args[i]) ? args.splice(i, -1) : undefined;
if (!this.bot.locales.has(args[0])) return msg.channel.createMessage(this.localize(msg.author.locale['core']['locale']['invalid']));

View File

@@ -25,8 +25,9 @@ module.exports = class Eval extends DiscordCommand {
}
localize(msg) {
// Empty
if (!msg) return '';
// Main
return msg.replace(/\$\[emoji#0]/g, this.bot.emote('developer', 'echo'));
}
};

View File

@@ -5,12 +5,13 @@ const { inspect } = require('util');
module.exports = class Eval extends DiscordCommand {
constructor(bot) {
super(bot, {
// Information
name : 'eval',
syntax : 'eval <...code:str>',
aliases : [],
argument : [],
description: 'Evaluate a snippet',
// Checks
hidden : false,
enabled : true,
cooldown : 0,
@@ -23,13 +24,12 @@ module.exports = class Eval extends DiscordCommand {
async execute(msg, args) {
let result;
let silent = args.join(' ').trim().endsWith('--silent') || args.join(' ').trim().endsWith('-s');
let silent = args.join(' ').trim().endsWith('--silent') || args.join(' ').trim().endsWith('-s') ? args.pop() : false;
let asynchr = args.join(' ').trim().includes('return') || args.join(' ').trim().includes('await');
let errored = false;
if (args.length <= 0) return msg.channel.createMessage(this.localize(msg.author.locale['developer']['eval']['args']));
if (silent) args = args.pop();
const message = await msg.channel.createMessage(this.localize(msg.author.locale['developer']['eval']['busy']));
try { result = (asynchr ? eval(`(async() => {${args.join(' ')}})();`) : eval(args.join(' '))); }
@@ -41,29 +41,37 @@ module.exports = class Eval extends DiscordCommand {
message.edit({
content: '',
embed: {
color : errored ? this.bot.col['developer']['eval']['failure'] : this.bot.col['developer']['eval']['success'],
description: this.localize(msg.author.locale['developer']['eval']['result'].join('\n'), { resultType: errored ? msg.author.locale['developer']['eval']['types'][1] : msg.author.locale['developer']['eval']['types'][0], resultMessage: this.bot.util.shorten(result, 1950) || '{}' })
color : (errored ? this.bot.col['developer']['eval']['failure'] : this.bot.col['developer']['eval']['success']),
description: this.localize(msg.author.locale['developer']['eval']['result'].join('\n'), { resultType: errored ? msg.author.locale['developer']['eval']['types'][1] : msg.author.locale['developer']['eval']['types'][0], resultMessage: this.bot.util.shorten(result, 1900) || '{}' })
}
});
};
}
sanitize(msg) {
// Empty
if (!msg) return undefined;
for(let _ in this.bot.conf['api']) msg = msg.replace(new RegExp(this.bot.conf['api'][_], 'gi'), '<--snip-->');
// API tokens
for(let _ in this.bot.conf['api']) {
msg = msg.replace(new RegExp(this.bot.conf['api'][_], 'gi'), '<--snip-->');
}
// Bot tokens
return msg
.replace(new RegExp(this.bot.token, 'gi'), '<--snip-->')
.replace(new RegExp(this.bot.conf['discord']['token'], 'gi'), '<--snip-->');
}
localize(msg, extData) {
// Empty
if (!msg) return '';
if (extData && extData.resultType) msg = msg.replace(/\$\[result:type]/g, extData.resultType);
if (extData && extData.resultMessage) msg = msg.replace(/\$\[result:message]/g, extData.resultMessage);
// extData
if (extData && extData.resultType) {
msg = msg.replace(/\$\[result:type]/g, extData.resultType);
}
if (extData && extData.resultMessage) {
msg = msg.replace(/\$\[result:message]/g, extData.resultMessage);
}
// Main
return msg
.replace(/\$\[emoji#0]/g, this.bot.emote('developer', 'eval', '0'))
.replace(/\$\[emoji#1]/g, this.bot.emote('developer', 'eval', '1'))

View File

@@ -43,11 +43,6 @@ module.exports = class Commands extends DiscordCommand {
thumbnail : { url: 'attachment://thumb.png' },
description: this.localize(msg.author.locale['info']['commands']['multi'].join('\n'), { msg: msg }),
fields : [
{
name : msg.author.locale['info']['commands']['fields'][0],
value : this.bot.cmds.filter((v) => v.extData.category.toLowerCase() === 'core' && !v.extData.hidden).map((v) => `**•** [\`${msg.prefix}${v.extData.name}\`](https://discordapp.com/channels/${msg.channel.guild.id}/${msg.channel.id}/${msg.id}) ${v.extData.description ? `**-** ${v.extData.description}` : ''}`).join('\n'),
inline: true
},
{
name : msg.author.locale['info']['commands']['fields'][1],
value : this.bot.cmds.filter((v) => v.extData.category.toLowerCase() === 'information' && !v.extData.hidden).map((v) => `**•** [\`${msg.prefix}${v.extData.name}\`](https://discordapp.com/channels/${msg.channel.guild.id}/${msg.channel.id}/${msg.id}) ${v.extData.description ? `**-** ${v.extData.description}` : ''}`).join('\n'),
@@ -67,6 +62,11 @@ module.exports = class Commands extends DiscordCommand {
name : msg.author.locale['info']['commands']['fields'][4],
value : this.bot.cmds.filter((v) => v.extData.category.toLowerCase() === 'developer' && !v.extData.hidden).map((v) => `**•** [\`${msg.prefix}${v.extData.name}\`](https://discordapp.com/channels/${msg.channel.guild.id}/${msg.channel.id}/${msg.id}) ${v.extData.description ? `**-** ${v.extData.description}` : ''}`).join('\n'),
inline: true
},
{
name : msg.author.locale['info']['commands']['fields'][0],
value : this.bot.cmds.filter((v) => v.extData.category.toLowerCase() === 'core' && !v.extData.hidden).map((v) => `**•** [\`${msg.prefix}${v.extData.name}\`](https://discordapp.com/channels/${msg.channel.guild.id}/${msg.channel.id}/${msg.id}) ${v.extData.description ? `**-** ${v.extData.description}` : ''}`).join('\n'),
inline: true
}
]
}

View File

@@ -0,0 +1,44 @@
const { DiscordCommand } = require('../../../core');
const w = require('wumpfetch');
module.exports = class Stats extends DiscordCommand {
constructor(bot) {
super(bot, {
name : 'commits',
syntax : 'commits',
aliases : [],
argument : [],
description: '10 most recent commits',
hidden : false,
enabled : true,
cooldown : 5000,
category : 'Information',
ownerOnly : false,
guildOnly : false,
permissions: [ 'embedLinks' ]
});
}
async execute( msg, args ) {
let res = await w('https://api.github.com/repos/PassTheWessel/wump/commits', { headers: { 'User-Agent': this.bot.ua } }).send();
res = res.json();
msg.channel.createMessage({
embed: {
color : this.bot.col['info']['commits'],
description: this.localize(msg.author.locale['info']['commits'].join('\n'), { total: res.length, commits: res.map((v) => `**•** [\`${v.sha.slice(0, 7)}\`](${v.html_url}) **⤏** ${this.bot.util.shorten(v.commit.message, 80)}`).slice(0, 10).join('\n') })
}
});
}
localize(msg, extData) {
if (!msg) return '';
return msg
.replace(/\$\[emoji#0]/g, this.bot.emote('info', 'commits', '0'))
.replace(/\$\[emoji#1]/g, this.bot.emote('info', 'commits', '1'))
.replace(/\$\[commits:list]/g, `\n${extData.commits}`)
.replace(/\$\[commits:total]/g, `\n${extData.total}`);
}
};

View File

@@ -2,12 +2,13 @@ module.exports = class WumpCommand {
constructor(bot, opts = {}) {
this.bot = bot;
this.extData = Object.assign({
// Information
name : null, // Command name ( required )
syntax : null, // Command syntax ( optional )
aliases : [], // Command aliases ( optional )
argument : [], // Command arguments ( optional )
description : null, // Command description ( optional )
// Checks
hidden : false, // Hidden from view ( true / false )
enabled : true, // Enabled or disabled ( true / false )
cooldown : 1000, // Command cooldown ( optional )

View File

@@ -68,23 +68,34 @@ module.exports = class CommandRegistry {
perm = msg.channel.permissionsOf(this.bot.user.id);
gCache = this.bot.cache.has('guilds') ? this.bot.cache.get('guilds') : this.bot.cache.set('guilds', []) && this.bot.cache.get('guilds');
uCache = this.bot.cache.has('users') ? this.bot.cache.get('users') : this.bot.cache.set('users', []) && this.bot.cache.get('users');
if (!this.checkArray('guildId', msg.channel.guild.id, gCache)) {
guild = await this.bot.m.connection.collection('dGuilds').findOne({ guildId: msg.channel.guild.id });
if (guild === null || !guild) {
guild = new this.bot.schema.guild({ guildId: msg.channel.guild.id });
await guild.save((err) => { if (err) process.handleError(err); });
} else gCache.push({ 'guildId': msg.channel.guild.id, 'prefix': guild.prefix, 'entryAge': Date.now() });
} else guild = gCache.filter((v) => v['guildId'] === msg.channel.guild.id );
// guild = await this.bot.m.connection.collection('dGuilds').findOne({ guildId: msg.channel.guild.id });
this.bot.m.connection.collection('dGuilds').findOne({ guildId: msg.channel.guild.id }, async (err, doc) => {
if (doc === null) {
guild = new this.bot.schema.guild({ guildId: msg.channel.guild.id });
guild.save((err) => { if (err) process.handleError(err); });
gCache.push({ 'guildId': msg.channel.guild.id, 'prefix': guild.prefix, 'entryAge': Date.now() });
} else {
guild = await this.bot.m.connection.collection('dGuilds').findOne({ guildId: msg.channel.guild.id });
gCache.push({ 'guildId': msg.channel.guild.id, 'prefix': guild.prefix, 'entryAge': Date.now() });
}
});
} else guild = gCache.filter((v) => v['guildId'] === msg.channel.guild.id )[0];
if (!this.checkArray('userId', msg.author.id, uCache)) {
user = await this.bot.m.connection.collection('dUsers').findOne({ userId: msg.author.id });
if (user === null || !user) {
user = new this.bot.schema.user({ userId: msg.author.id });
await user.save((err) => { if (err) process.handleError(err); });
} else uCache.push({ 'userId': msg.author.id, locale: user.locale ? user.locale : this.bot.conf['discord']['locale'], 'entryAge': Date.now() });
this.bot.m.connection.collection('dUsers').findOne({ userId: msg.author.id }, async (err, doc) => {
if (doc === null) {
user = new this.bot.schema.user({ userId: msg.author.id });
user.save((err) => { if (err) process.handleError(err); });
uCache.push({ 'userId': msg.author.id, locale: user.locale ? user.locale : this.bot.conf['discord']['locale'], 'prefix': user.prefix, 'entryAge': Date.now() });
} else {
user = await this.bot.m.connection.collection('dUsers').findOne({ userId: msg.author.id });
uCache.push({ 'userId': msg.author.id, locale: user.locale ? user.locale : this.bot.conf['discord']['locale'], 'entryAge': Date.now() });
}
});
} else user = uCache.filter((v) => v['userId'] === msg.author.id )[0];
msg.author.locale = this.bot.locales.get(user['locale'] ? user['locale'] : 'en_us');
msg.author.locale = this.bot.locales.get(user && user['locale'] ? user['locale'] : 'en_us');
prefix = new RegExp([
`^<@!?${this.bot.user.id}> `,
`^${this.bot.conf['discord']['prefix'].replace(/[-/\\^$*+?.()|[\]{}]/g, '\\$&')}`,
@@ -108,8 +119,8 @@ module.exports = class CommandRegistry {
if (!this.bot.cache.has('commands_ran')) this.bot.cache.set('commands_ran', 1);
else this.bot.cache.set('commands_ran', this.bot.cache.get('commands_ran') + 1);
user['entryAge'] = Date.now();
guild['entryAge'] = Date.now();
user ? user['entryAge'] = Date.now() : undefined;
guild ? guild['entryAge'] = Date.now() : undefined;
cmd = cmd[0];
if (cmd.extData.ownerOnly && !this.bot.op(msg.author.id))

View File

@@ -24,14 +24,14 @@ acorn-jsx@^5.0.0:
integrity sha512-HJ7CfNHrfJLlNTzIEUTj43LNWGkqpRLxm3YjAlcD0ACydk9XynzYsCBHxut+iqt+1aBXkx9UP/w/ZqMr13XIzg==
acorn@^6.0.2:
version "6.0.6"
resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.0.6.tgz#cd75181670d5b99bdb1b1c993941d3a239ab1f56"
integrity sha512-5M3G/A4uBSMIlfJ+h9W125vJvPFH/zirISsW5qfxF5YzEvXJCtolLoQvM5yZft0DvMcUrPGKPOlgEu55I6iUtA==
version "6.0.7"
resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.0.7.tgz#490180ce18337270232d9488a44be83d9afb7fd3"
integrity sha512-HNJNgE60C9eOTgn974Tlp3dpLZdUr+SoxxDwPaY9J/kDNOLQTkaDgwBUXAF4SSsrAwD9RpdxuHK/EbuF+W9Ahw==
ajv@^6.5.3, ajv@^6.6.1:
version "6.7.0"
resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.7.0.tgz#e3ce7bb372d6577bb1839f1dfdfcbf5ad2948d96"
integrity sha512-RZXPviBTtfmtka9n9sy1N5M5b82CbxWIR6HIis4s3WQTXDJamc/0gpCWNGz6EWdWp4DOfjzJfhz/AS9zVPjjWg==
version "6.8.1"
resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.8.1.tgz#0890b93742985ebf8973cd365c5b23920ce3cb20"
integrity sha512-eqxCp82P+JfqL683wwsL73XmFs1eG6qjw+RD3YHx+Jll1r0jNd4dh8QG9NYAeNGA/hnZjeEDgtTskgJULbxpWQ==
dependencies:
fast-deep-equal "^2.0.1"
fast-json-stable-stringify "^2.0.0"
@@ -692,7 +692,7 @@ js-tokens@^4.0.0:
resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499"
integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==
js-yaml@^3.12.0:
js-yaml@^3.12.0, js-yaml@^3.12.1:
version "3.12.1"
resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.12.1.tgz#295c8632a18a23e054cf5c9d3cecafe678167600"
integrity sha512-um46hB9wNOKlwkHgiuyEVAybXBjwFUV0Z/RaHJblRd9DXltue9FTYvzCr9ErQrK9Adz5MU4gHWVaNUfdmrC8qA==
@@ -733,7 +733,7 @@ lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.5:
resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.11.tgz#b39ea6229ef607ecd89e2c8df12536891cac9b8d"
integrity sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==
mathjs@^5.1.2:
mathjs@^5.4.2:
version "5.4.2"
resolved "https://registry.yarnpkg.com/mathjs/-/mathjs-5.4.2.tgz#44f4e5ae88c188f9a8dc80e5ce1b41af29829261"
integrity sha512-jN6SLsaRvihxgRoq4+5/Tbw/mVe71W0kCxZA2TdpNRR+MHJGow/TsRrU5B6uXd7lYNWxiVeubn+F5d3mLtxARw==
@@ -801,15 +801,15 @@ mkdirp@^0.5.0, mkdirp@^0.5.1:
dependencies:
minimist "0.0.8"
moment@^2.22.2:
moment@^2.24.0:
version "2.24.0"
resolved "https://registry.yarnpkg.com/moment/-/moment-2.24.0.tgz#0d055d53f5052aa653c9f6eb68bb5d12bf5c2b5b"
integrity sha512-bV7f+6l2QigeBBZSM/6yTNq4P2fNpSWj/0e7jQcy87A8e7o2nAfP/34/2ky5Vw4B9S446EtIhodAzkFCcR4dQg==
mongodb-core@3.1.9:
version "3.1.9"
resolved "https://registry.yarnpkg.com/mongodb-core/-/mongodb-core-3.1.9.tgz#c31ee407bf932b0149eaed775c17ee09974e4ca3"
integrity sha512-MJpciDABXMchrZphh3vMcqu8hkNf/Mi+Gk6btOimVg1XMxLXh87j6FAvRm+KmwD1A9fpu3qRQYcbQe4egj23og==
mongodb-core@3.1.11:
version "3.1.11"
resolved "https://registry.yarnpkg.com/mongodb-core/-/mongodb-core-3.1.11.tgz#b253038dbb4d7329f3d1c2ee5400bb0c9221fde5"
integrity sha512-rD2US2s5qk/ckbiiGFHeu+yKYDXdJ1G87F6CG3YdaZpzdOm5zpoAZd/EKbPmFO6cQZ+XVXBXBJ660sSI0gc6qg==
dependencies:
bson "^1.1.0"
require_optional "^1.0.1"
@@ -817,12 +817,12 @@ mongodb-core@3.1.9:
optionalDependencies:
saslprep "^1.0.0"
mongodb@3.1.10:
version "3.1.10"
resolved "https://registry.yarnpkg.com/mongodb/-/mongodb-3.1.10.tgz#45ad9b74ea376f4122d0881b75e5489b9e504ed7"
integrity sha512-Uml42GeFxhTGQVml1XQ4cD0o/rp7J2ROy0fdYUcVitoE7vFqEhKH4TYVqRDpQr/bXtCJVxJdNQC1ntRxNREkPQ==
mongodb@3.1.13:
version "3.1.13"
resolved "https://registry.yarnpkg.com/mongodb/-/mongodb-3.1.13.tgz#f8cdcbb36ad7a08b570bd1271c8525753f75f9f4"
integrity sha512-sz2dhvBZQWf3LRNDhbd30KHVzdjZx9IKC0L+kSZ/gzYquCF5zPOgGqRz6sSCqYZtKP2ekB4nfLxhGtzGHnIKxA==
dependencies:
mongodb-core "3.1.9"
mongodb-core "3.1.11"
safe-buffer "^5.1.2"
mongoose-legacy-pluralize@1.0.2:
@@ -830,16 +830,16 @@ mongoose-legacy-pluralize@1.0.2:
resolved "https://registry.yarnpkg.com/mongoose-legacy-pluralize/-/mongoose-legacy-pluralize-1.0.2.tgz#3ba9f91fa507b5186d399fb40854bff18fb563e4"
integrity sha512-Yo/7qQU4/EyIS8YDFSeenIvXxZN+ld7YdV9LqFVQJzTLye8unujAWPZ4NWKfFA+RNjh+wvTWKY9Z3E5XM6ZZiQ==
mongoose@^5.2.17:
version "5.4.9"
resolved "https://registry.yarnpkg.com/mongoose/-/mongoose-5.4.9.tgz#3cf4f74d2598e62974b7b617a4fa34a838bf32b4"
integrity sha512-4dSQpDUe/9b7A7dRrsyJfWmoGEpeMaZ/WZ/KIJFqTHbJm3NUWaWF++hhirAgjtoHNq2ZILIII0LHEhgzP2NuRw==
mongoose@^5.4.10:
version "5.4.10"
resolved "https://registry.yarnpkg.com/mongoose/-/mongoose-5.4.10.tgz#640ee516449bc736a729e49e3eba873ae63a0030"
integrity sha512-yJl+A7p8QF++tyBl6fRGFON5GV57MTXLKNiaiqgX5vZs1qJpcZpPiUGU5odBiqTHFYPybuRp8dW9Qtv4K6SxBQ==
dependencies:
async "2.6.1"
bson "~1.1.0"
kareem "2.3.0"
mongodb "3.1.10"
mongodb-core "3.1.9"
mongodb "3.1.13"
mongodb-core "3.1.11"
mongoose-legacy-pluralize "1.0.2"
mpath "0.5.1"
mquery "3.2.0"
@@ -904,7 +904,7 @@ nice-try@^1.0.4:
resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366"
integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==
node-abi@^2.2.0:
node-abi@^2.7.0:
version "2.7.0"
resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-2.7.0.tgz#e2f814088ab97c85504ae2bacb8f93d5d77cbc2b"
integrity sha512-egTtvNoZLMjwxkL/5iiJKYKZgn2im0zP+G+PncMxICYGiD3aZtXUvEsDmu0pF8gpASvLZyD8v53qi1/ELaRZpg==
@@ -1000,9 +1000,9 @@ path-key@^2.0.1:
integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=
prebuild-install@^5.2.2:
version "5.2.3"
resolved "https://registry.yarnpkg.com/prebuild-install/-/prebuild-install-5.2.3.tgz#096f5116e63eeef57ae533a2ee460b13d7872704"
integrity sha512-sdijGV8EkK244XbYJLRhOLiHj9QZKUaYW6uDotEPpRGrC5FUXFr6mZhGHr9NjhU0MISI+JSqZ0geVZMs2kIDRQ==
version "5.2.4"
resolved "https://registry.yarnpkg.com/prebuild-install/-/prebuild-install-5.2.4.tgz#8cc41a217ef778a31d3a876fe6668d05406db750"
integrity sha512-CG3JnpTZXdmr92GW4zbcba4jkDha6uHraJ7hW4Fn8j0mExxwOKK20hqho8ZuBDCKYCHYIkFM1P2jhtG+KpP4fg==
dependencies:
detect-libc "^1.0.3"
expand-template "^2.0.3"
@@ -1010,7 +1010,7 @@ prebuild-install@^5.2.2:
minimist "^1.2.0"
mkdirp "^0.5.1"
napi-build-utils "^1.0.1"
node-abi "^2.2.0"
node-abi "^2.7.0"
noop-logger "^0.1.1"
npmlog "^4.0.1"
os-homedir "^1.0.1"
@@ -1316,7 +1316,7 @@ supports-color@^5.3.0:
dependencies:
has-flag "^3.0.0"
table@^5.0.2, table@^5.1.0:
table@^5.0.2, table@^5.2.2:
version "5.2.2"
resolved "https://registry.yarnpkg.com/table/-/table-5.2.2.tgz#61d474c9e4d8f4f7062c98c7504acb3c08aa738f"
integrity sha512-f8mJmuu9beQEDkKHLzOv4VxVYlU68NpdzjbGPl69i4Hx0sTopJuNxuzJd17iV2h24dAfa93u794OnDA5jqXvfQ==
@@ -1430,7 +1430,7 @@ util-deprecate@~1.0.1:
resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=
vm2@^3.6.3:
vm2@^3.6.10:
version "3.6.10"
resolved "https://registry.yarnpkg.com/vm2/-/vm2-3.6.10.tgz#a9066c3849ad8a3ea35b9c0cf79a6589ce6e3cbe"
integrity sha512-p4LBl7theIhmKaWPdCn25kEIG0bfDDEDx1lexXH7gcCu9pHIT+PKFgofwLHVHUGhe39lKExeaYVEZtdbQhdl2g==