From 4ffda3a8aec7fb784250bf2b8c2b14978ee71f1d Mon Sep 17 00:00:00 2001 From: Daniel Odendahl Jr Date: Sun, 5 Nov 2017 15:06:37 +0000 Subject: [PATCH] trimArray util function --- commands/search/npm.js | 15 +++------------ package.json | 2 +- util/Util.js | 9 +++++++++ 3 files changed, 13 insertions(+), 13 deletions(-) diff --git a/commands/search/npm.js b/commands/search/npm.js index 1e24a998..c8fe1f7f 100644 --- a/commands/search/npm.js +++ b/commands/search/npm.js @@ -1,6 +1,7 @@ const { Command } = require('discord.js-commando'); const { MessageEmbed } = require('discord.js'); const snekfetch = require('snekfetch'); +const { trimArray } = require('../../util/Util'); module.exports = class NPMCommand extends Command { constructor(client) { @@ -26,18 +27,8 @@ module.exports = class NPMCommand extends Command { try { const { body } = await snekfetch.get(`https://registry.npmjs.com/${query}`); const version = body.versions[body['dist-tags'].latest]; - let maintainers = body.maintainers.map(user => user.name); - if (maintainers.length > 10) { - const len = maintainers.length - 10; - maintainers = maintainers.slice(0, 10); - maintainers.push(`...${len} more.`); - } - let dependencies = version.dependencies ? Object.keys(version.dependencies) : null; - if (dependencies && dependencies.length > 10) { - const len = dependencies.length - 10; - dependencies = dependencies.slice(0, 10); - dependencies.push(`...${len} more.`); - } + const maintainers = trimArray(body.maintainers.map(user => user.name)); + const dependencies = version.dependencies ? trimArray(Object.keys(version.dependencies)) : null; const embed = new MessageEmbed() .setColor(0xCB0000) .setAuthor('NPM', 'https://i.imgur.com/ErKf5Y0.png') diff --git a/package.json b/package.json index f24df4da..be3f75f1 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "xiaobot", - "version": "51.4.0", + "version": "51.4.1", "description": "Your personal server companion.", "main": "XiaoBot.js", "scripts": { diff --git a/util/Util.js b/util/Util.js index f5963252..fa3a5839 100644 --- a/util/Util.js +++ b/util/Util.js @@ -52,6 +52,15 @@ class Util { return Math.floor(Math.random() * (max - min + 1)) + min; } + static trimArray(arr, maxLen = 10) { + if (arr.length > maxLen) { + const len = arr.length - maxLen; + arr = arr.slice(0, maxLen); + arr.push(`${len} more...`); + } + return arr; + } + static promisifyAll(obj, suffix = 'Async') { for (const key of Object.keys(obj)) { if (typeof obj[key] !== 'function') continue;