adfghjfx
This commit is contained in:
		
							parent
							
								
									1f267e1cfb
								
							
						
					
					
						commit
						02e570eb00
					
				
					 9 changed files with 773 additions and 212 deletions
				
			
		
							
								
								
									
										32
									
								
								.eslintrc.js
									
										
									
									
									
								
							
							
						
						
									
										32
									
								
								.eslintrc.js
									
										
									
									
									
								
							| 
						 | 
					@ -1,16 +1,18 @@
 | 
				
			||||||
module.exports = {
 | 
					module.exports = {
 | 
				
			||||||
    "env": {
 | 
					  env: {
 | 
				
			||||||
        "es6": true,
 | 
					    es6: true,
 | 
				
			||||||
        "node": true
 | 
					    node: true
 | 
				
			||||||
    },
 | 
					  },
 | 
				
			||||||
    "extends": "eslint:recommended",
 | 
					  extends: [
 | 
				
			||||||
    "globals": {
 | 
					    'standard'
 | 
				
			||||||
        "Atomics": "readonly",
 | 
					  ],
 | 
				
			||||||
        "SharedArrayBuffer": "readonly"
 | 
					  globals: {
 | 
				
			||||||
    },
 | 
					    Atomics: 'readonly',
 | 
				
			||||||
    "parserOptions": {
 | 
					    SharedArrayBuffer: 'readonly'
 | 
				
			||||||
        "ecmaVersion": 2018
 | 
					  },
 | 
				
			||||||
    },
 | 
					  parserOptions: {
 | 
				
			||||||
    "rules": {
 | 
					    ecmaVersion: 2018
 | 
				
			||||||
    }
 | 
					  },
 | 
				
			||||||
};
 | 
					  rules: {
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										48
									
								
								commands/eval.js
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										48
									
								
								commands/eval.js
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,48 @@
 | 
				
			||||||
 | 
					/* eslint-disable no-eval */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					exports.conf = {
 | 
				
			||||||
 | 
					  enabled: true,
 | 
				
			||||||
 | 
					  guildOnly: false,
 | 
				
			||||||
 | 
					  aliases: [],
 | 
				
			||||||
 | 
					  permLevel: 'Developer',
 | 
				
			||||||
 | 
					  requiredPerms: []
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					exports.help = {
 | 
				
			||||||
 | 
					  name: 'eval',
 | 
				
			||||||
 | 
					  category: 'Owner',
 | 
				
			||||||
 | 
					  description: 'Evaluates arbitrary javascript.',
 | 
				
			||||||
 | 
					  usage: 'eval [code]'
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					exports.run = async (client, message, args) => {
 | 
				
			||||||
 | 
					  const hastebin = require('hastebin-gen')
 | 
				
			||||||
 | 
					  const code = args.join(' ')
 | 
				
			||||||
 | 
					  try {
 | 
				
			||||||
 | 
					    const evaled = eval(code)
 | 
				
			||||||
 | 
					    const clean = await client.clean(client, evaled)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    if (clean.length > 2000) {
 | 
				
			||||||
 | 
					      hastebin(clean, { extension: 'txt' }).then(haste => {
 | 
				
			||||||
 | 
					        return message.channel.send('`OUTPUT`\n' + haste)
 | 
				
			||||||
 | 
					      }).catch(error => {
 | 
				
			||||||
 | 
					        client.logger.error(error)
 | 
				
			||||||
 | 
					      })
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      return
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    message.channel.send(`\`OUTPUT\` \`\`\`js\n${await clean}\n\`\`\``)
 | 
				
			||||||
 | 
					  } catch (err) {
 | 
				
			||||||
 | 
					    const errclean = await client.clean(client, err)
 | 
				
			||||||
 | 
					    if (errclean.length > 2000) {
 | 
				
			||||||
 | 
					      hastebin(errclean, { extension: 'txt' }).then(haste => {
 | 
				
			||||||
 | 
					        return message.channel.send('`ERROR`\n' + haste)
 | 
				
			||||||
 | 
					      }).catch(error => {
 | 
				
			||||||
 | 
					        client.logger.error(error)
 | 
				
			||||||
 | 
					      })
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      return
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    message.channel.send(`\`ERROR\` \`\`\`xl\n${await errclean}\n\`\`\``)
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -84,4 +84,4 @@ const config = {
 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
module.exports = config
 | 
					module.exports = config
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -32,7 +32,7 @@ module.exports = async (client, message) => {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  // Dev perm level is separate so dev's don't get owner perms where they shouldn't have them
 | 
					  // Dev perm level is separate so dev's don't get owner perms where they shouldn't have them
 | 
				
			||||||
  if (cmd.conf.permLevel === 'Developer') {
 | 
					  if (cmd.conf.permLevel === 'Developer') {
 | 
				
			||||||
    if (!message.client.config.owners.includes(message.author.id)) {
 | 
					    if (!client.config.devs.includes(message.author.id)) {
 | 
				
			||||||
      return message.channel.send('You don\'t have permission to run this command!')
 | 
					      return message.channel.send('You don\'t have permission to run this command!')
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										16
									
								
								index.js
									
										
									
									
									
								
							
							
						
						
									
										16
									
								
								index.js
									
										
									
									
									
								
							| 
						 | 
					@ -17,15 +17,15 @@ const client = new Discord.Client({ disabledEvents: ['TYPING_START'] })
 | 
				
			||||||
// Logger
 | 
					// Logger
 | 
				
			||||||
client.logger = require('tracer').colorConsole({
 | 
					client.logger = require('tracer').colorConsole({
 | 
				
			||||||
  format: [
 | 
					  format: [
 | 
				
			||||||
    '{{timestamp}} | {{title}} | {{file}}:{{line}} | {{message}}',
 | 
					    '{{timestamp}} | {{title}} | {{file}} | {{message}}',
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
      debug: `{{timestamp}} | ${'{{title}}'.magenta} | {{file}}:{{line}} | {{message}}`,
 | 
					      debug: `{{timestamp}} | ${'{{title}}'.magenta} | {{file}} | {{message}}`,
 | 
				
			||||||
      log: `{{timestamp}} | ${'{{title}}'.white} | {{file}}:{{line}} | {{message}}`,
 | 
					      log: `{{timestamp}} | ${'{{title}}'.white} | {{file}} | {{message}}`,
 | 
				
			||||||
      info: `{{timestamp}} | ${'{{title}}'.cyan} | {{file}}:{{line}} | {{message}}`,
 | 
					      info: `{{timestamp}} | ${'{{title}}'.cyan} | {{file}} | {{message}}`,
 | 
				
			||||||
      ready: `{{timestamp}} | ${'{{title}}'.green} | {{file}}:{{line}} | {{message}}`,
 | 
					      ready: `{{timestamp}} | ${'{{title}}'.green} | {{file}} | {{message}}`,
 | 
				
			||||||
      warn: `{{timestamp}} | ${'{{title}}'.yellow} | {{file}}:{{line}} | {{message}}`,
 | 
					      warn: `{{timestamp}} | ${'{{title}}'.yellow} | {{file}} | {{message}}`,
 | 
				
			||||||
      error: `{{timestamp}} | ${'{{title}}'.red} | {{file}}:{{line}} | {{message}}`,
 | 
					      error: `{{timestamp}} | ${'{{title}}'.red} | {{file}} | {{message}}`,
 | 
				
			||||||
      fatal: `{{timestamp}} | ${'{{title}}'.red.bold} | {{file}}:{{line}} | {{message}}`
 | 
					      fatal: `{{timestamp}} | ${'{{title}}'.red.bold} | {{file}} | {{message}}`
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ],
 | 
					  ],
 | 
				
			||||||
  dateformat: 'yyyy-mm-dd"T"HH:MM:ss',
 | 
					  dateformat: 'yyyy-mm-dd"T"HH:MM:ss',
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -40,7 +40,7 @@ module.exports = client => {
 | 
				
			||||||
    } else if (client.aliases.has(commandName)) {
 | 
					    } else if (client.aliases.has(commandName)) {
 | 
				
			||||||
      command = client.commands.get(client.aliases.get(commandName))
 | 
					      command = client.commands.get(client.aliases.get(commandName))
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    if (!command) return `The command \`${commandName}\` doesn"t seem to exist, nor is it an alias. Try again!`
 | 
					    if (!command) return `The command \`${commandName}\` doesn't seem to exist, nor is it an alias. Try again!`
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    if (command.shutdown) {
 | 
					    if (command.shutdown) {
 | 
				
			||||||
      await command.shutdown(client)
 | 
					      await command.shutdown(client)
 | 
				
			||||||
| 
						 | 
					@ -56,6 +56,21 @@ module.exports = client => {
 | 
				
			||||||
    return false
 | 
					    return false
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  client.clean = async (client, text) => {
 | 
				
			||||||
 | 
					    if (text && text.constructor.name === 'Promise') {
 | 
				
			||||||
 | 
					      text = await text
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    if (typeof text !== 'string') {
 | 
				
			||||||
 | 
					      text = require('util').inspect(text, { depth: 1 })
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    text = text
 | 
				
			||||||
 | 
					      .replace(/`/g, '`' + String.fromCharCode(8203))
 | 
				
			||||||
 | 
					      .replace(/@/g, '@' + String.fromCharCode(8203))
 | 
				
			||||||
 | 
					      .replace(client.token, 'mfa.VkO_2G4Qv3T--NO--lWetW_tjND--TOKEN--QFTm6YGtzq9PH--4U--tG0')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    return text
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  client.getMembers = function (guild, query) {
 | 
					  client.getMembers = function (guild, query) {
 | 
				
			||||||
    if (!query) return
 | 
					    if (!query) return
 | 
				
			||||||
    query = query.toLowerCase()
 | 
					    query = query.toLowerCase()
 | 
				
			||||||
| 
						 | 
					@ -82,43 +97,30 @@ module.exports = client => {
 | 
				
			||||||
    return a
 | 
					    return a
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  client.findUser = function (query) {
 | 
					  client.getMembers = function (guild, query) {
 | 
				
			||||||
    if (!query || typeof query !== "string") return
 | 
					    if (!query || typeof query !== 'string') return
 | 
				
			||||||
    query = query.toLowerCase()
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
    let user
 | 
					    const members = []
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    if (query.match(/^<@!?(\d+)>$/)) {
 | 
					    // Try ID search
 | 
				
			||||||
      let id = query.match(/^<@!?(\d+)>$/)[1]
 | 
					    if (!isNaN(query) === true) {
 | 
				
			||||||
      user = this.users.fetch(id).catch((err) => {})
 | 
					      members.push(guild.members.cache.get(query))
 | 
				
			||||||
      if(user) return user
 | 
					      if (members[0]) {
 | 
				
			||||||
    }
 | 
					        return members[0]
 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  client.getUsers = function (guild, query) {
 | 
					 | 
				
			||||||
    if (!query) return
 | 
					 | 
				
			||||||
    query = query.toLowerCase()
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    var a = []
 | 
					 | 
				
			||||||
    var b
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // MAKE IT SO IT CAN TAKE AN ID
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    try {
 | 
					 | 
				
			||||||
      b = guild.members.cache.find(x => x.displayName.toLowerCase() === query)
 | 
					 | 
				
			||||||
      if (!b) guild.members.cache.find(x => x.user.username.toLowerCase() === query)
 | 
					 | 
				
			||||||
    } catch (err) {}
 | 
					 | 
				
			||||||
    if (b) a.push(b)
 | 
					 | 
				
			||||||
    guild.members.cache.forEach(member => {
 | 
					 | 
				
			||||||
      if (
 | 
					 | 
				
			||||||
        (member.displayName.toLowerCase().startsWith(query) ||
 | 
					 | 
				
			||||||
          member.user.tag.toLowerCase().startsWith(query)) &&
 | 
					 | 
				
			||||||
        member.id !== (b && b.id)
 | 
					 | 
				
			||||||
      ) {
 | 
					 | 
				
			||||||
        a.push(member)
 | 
					 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    })
 | 
					    }
 | 
				
			||||||
    return a
 | 
					
 | 
				
			||||||
 | 
					    // Try username search
 | 
				
			||||||
 | 
					    try {
 | 
				
			||||||
 | 
					      guild.members.cache.forEach(m => {
 | 
				
			||||||
 | 
					        if (m.displayName.toLowerCase().startsWith(query) || m.user.tag.toLowerCase.startsWith(query)) {
 | 
				
			||||||
 | 
					          members.push(m)
 | 
				
			||||||
 | 
					          console.log(m)
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					      })
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      return members
 | 
				
			||||||
 | 
					    } catch (err) {}
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  // Both of these functions catch errors and log them
 | 
					  // Both of these functions catch errors and log them
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										149
									
								
								modules/music.js
									
										
									
									
									
								
							
							
						
						
									
										149
									
								
								modules/music.js
									
										
									
									
									
								
							| 
						 | 
					@ -1,156 +1,11 @@
 | 
				
			||||||
 | 
					/*
 | 
				
			||||||
const ytdl = require('ytdl-core-discord')
 | 
					const ytdl = require('ytdl-core-discord')
 | 
				
			||||||
const youtubeInfo = require('youtube-info')
 | 
					const youtubeInfo = require('youtube-info')
 | 
				
			||||||
const getYoutubeId = require('get-youtube-id')
 | 
					const getYoutubeId = require('get-youtube-id')
 | 
				
			||||||
const fetch = require('node-fetch')
 | 
					const fetch = require('node-fetch')
 | 
				
			||||||
 | 
					*/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
module.exports = client => {
 | 
					module.exports = client => {
 | 
				
			||||||
  client.music = { guilds: {} }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  client.music.isYoutubeLink = function (input) {
 | 
					 | 
				
			||||||
    return input.startsWith('https://www.youtube.com/') || input.startsWith('http://www.youtube.com/') || input.startsWith('https://youtube.com/') || input.startsWith('http://youtube.com/') || input.startsWith('https://youtu.be/') || input.startsWith('http://youtu.be/') || input.startsWith('http://m.youtube.com/') || input.startsWith('https://m.youtube.com/')
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  client.music.search = async function (query) {
 | 
					 | 
				
			||||||
    return new Promise(function (resolve, reject) {
 | 
					 | 
				
			||||||
      try {
 | 
					 | 
				
			||||||
        fetch('https://www.googleapis.com/youtube/v3/search?part=id&type=video&q=' + encodeURIComponent(query) + '&key=' + process.env.YTKEY)
 | 
					 | 
				
			||||||
          .then(res => res.json())
 | 
					 | 
				
			||||||
          .then(json => {
 | 
					 | 
				
			||||||
            if (!json.items) { reject() }
 | 
					 | 
				
			||||||
            resolve(json.items[0])
 | 
					 | 
				
			||||||
          })
 | 
					 | 
				
			||||||
      } catch (err) {
 | 
					 | 
				
			||||||
        client.logger.error('Music search err: ', err)
 | 
					 | 
				
			||||||
        throw err
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    })
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  client.music.getGuild = function (id) {
 | 
					 | 
				
			||||||
    if (client.music.guilds[id]) return client.music.guilds[id]
 | 
					 | 
				
			||||||
    return client.music.guilds[id] = {
 | 
					 | 
				
			||||||
      queue: [],
 | 
					 | 
				
			||||||
      playing: false,
 | 
					 | 
				
			||||||
      paused: false,
 | 
					 | 
				
			||||||
      dispatcher: null,
 | 
					 | 
				
			||||||
      skippers: []
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
  
 | 
					 | 
				
			||||||
  client.music.getMeta = async function(id)
 | 
					 | 
				
			||||||
  {
 | 
					 | 
				
			||||||
      return new Promise(function(resolve, reject)
 | 
					 | 
				
			||||||
      {
 | 
					 | 
				
			||||||
          youtubeInfo(id, function(err, videoInfo)
 | 
					 | 
				
			||||||
          {
 | 
					 | 
				
			||||||
              if(err) throw err
 | 
					 | 
				
			||||||
  
 | 
					 | 
				
			||||||
              resolve(videoInfo)
 | 
					 | 
				
			||||||
          })
 | 
					 | 
				
			||||||
      })
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
  
 | 
					 | 
				
			||||||
  client.music.play = async function(message, input, bypassQueue)
 | 
					 | 
				
			||||||
  {
 | 
					 | 
				
			||||||
      let voiceChannel = message.member.voice.channel
 | 
					 | 
				
			||||||
      if(!voiceChannel) return message.channel.send('<:error:466995152976871434> You need to be in a voice channel to use this command!')
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      let permissions = voiceChannel.permissionsFor(client.user)
 | 
					 | 
				
			||||||
      if (!permissions.has('CONNECT')) {
 | 
					 | 
				
			||||||
          return message.channel.send('<:error:466995152976871434> I do not have permission to join your voice channel.')
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
      if (!permissions.has('SPEAK')) {
 | 
					 | 
				
			||||||
          return message.channel.send('<:error:466995152976871434> I do not have permission to join your voice channel.')
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
      if (voiceChannel.joinable != true) {
 | 
					 | 
				
			||||||
          return message.channel.send("<:error:466995152976871434> I do not have permission to join your voice channel.")
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      let id = undefined
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      if(client.music.isYoutubeLink(input))
 | 
					 | 
				
			||||||
      {
 | 
					 | 
				
			||||||
          id = await getYoutubeId(input)
 | 
					 | 
				
			||||||
      } else {
 | 
					 | 
				
			||||||
          let item = await client.music.search(input)
 | 
					 | 
				
			||||||
          if(!item) {
 | 
					 | 
				
			||||||
            return message.channel.send(`<:error:466995152976871434> No results found.`)
 | 
					 | 
				
			||||||
          }
 | 
					 | 
				
			||||||
          id = item.id.videoId
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      // music "playing", nothing in queue
 | 
					 | 
				
			||||||
      if((client.music.getGuild(message.guild.id).playing || client.music.getGuild(message.guild.id).dispatcher) && client.music.getGuild(message.guild.id).queue.length == 0) {
 | 
					 | 
				
			||||||
        client.music.getGuild(message.guild.id).playing = false;
 | 
					 | 
				
			||||||
        client.music.getGuild(message.guild.id).dispatcher = null;
 | 
					 | 
				
			||||||
      // music not playing, something is in queue
 | 
					 | 
				
			||||||
      } else if(!client.music.getGuild(message.guild.id).playing && !client.music.getGuild(message.guild.id).dispatcher && client.music.getGuild(message.guild.id).queue.length > 0) {
 | 
					 | 
				
			||||||
        client.music.getGuild(message.guild.id).queue = [];
 | 
					 | 
				
			||||||
      };
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      if(client.music.getGuild(message.guild.id).queue.length == 0 || bypassQueue)
 | 
					 | 
				
			||||||
      {
 | 
					 | 
				
			||||||
          let meta = await client.music.getMeta(id)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
          if(!bypassQueue) client.music.getGuild(message.guild.id).queue.push({input: input, id: id, requestedBy: message.author, title: meta.title, author: meta.owner, thumbnail: meta.thumbnailUrl, duration: meta.duration})
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
          let connection = await new Promise((resolve, reject) =>
 | 
					 | 
				
			||||||
          {
 | 
					 | 
				
			||||||
              voiceChannel.join().then((connection) =>
 | 
					 | 
				
			||||||
              {
 | 
					 | 
				
			||||||
                  resolve(connection)
 | 
					 | 
				
			||||||
              })
 | 
					 | 
				
			||||||
          })
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
          function end(silent)
 | 
					 | 
				
			||||||
          {
 | 
					 | 
				
			||||||
              client.music.getGuild(message.guild.id).queue.shift()
 | 
					 | 
				
			||||||
              client.music.getGuild(message.guild.id).dispatcher = null
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
              if(client.music.getGuild(message.guild.id).queue.length > 0)
 | 
					 | 
				
			||||||
              {
 | 
					 | 
				
			||||||
                  client.music.play(message, client.music.getGuild(message.guild.id).queue[0].input, true)
 | 
					 | 
				
			||||||
              } else {
 | 
					 | 
				
			||||||
                  client.music.getGuild(message.guild.id).playing = false
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                  if(!silent) {
 | 
					 | 
				
			||||||
                    message.channel.send("<:play:467216788187512832> Queue is empty! Disconnecting from the voice channel.")
 | 
					 | 
				
			||||||
                  }
 | 
					 | 
				
			||||||
                  
 | 
					 | 
				
			||||||
                  connection.disconnect()
 | 
					 | 
				
			||||||
              }
 | 
					 | 
				
			||||||
          }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
          client.music.getGuild(message.guild.id).playing = true
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
          let song = client.music.getGuild(message.guild.id).queue[0]
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
          try
 | 
					 | 
				
			||||||
          {
 | 
					 | 
				
			||||||
              let dispatcher = client.music.getGuild(message.guild.id).dispatcher = connection.play(await ytdl("https://www.youtube.com/watch?v=" + id, {highWaterMark: 1024 * 1024 * 32}), {type: 'opus'})
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
              dispatcher.on('finish', (a, b) =>
 | 
					 | 
				
			||||||
              {
 | 
					 | 
				
			||||||
                  end(a == "silent")
 | 
					 | 
				
			||||||
              })
 | 
					 | 
				
			||||||
          } catch(err) {
 | 
					 | 
				
			||||||
              message.channel.send('<:error:466995152976871434> Failed to play **' + song.title + '** ' + err)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
              end()
 | 
					 | 
				
			||||||
          }
 | 
					 | 
				
			||||||
          
 | 
					 | 
				
			||||||
          client.music.getGuild(message.guild.id).skippers = []
 | 
					 | 
				
			||||||
          message.channel.send(`<:play:467216788187512832> Now playing: **${song.title}**`)
 | 
					 | 
				
			||||||
      } else {
 | 
					 | 
				
			||||||
          let meta = await client.music.getMeta(id)
 | 
					 | 
				
			||||||
          let song = {input: input, id: id, requestedBy: message.author, title: meta.title, author: meta.owner, thumbnail: meta.thumbnailUrl, duration: meta.duration}
 | 
					 | 
				
			||||||
          
 | 
					 | 
				
			||||||
          client.music.getGuild(message.guild.id).queue.push(song)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
          message.channel.send(`<:success:466995111885144095> Added to queue: **${song.title}**`)
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  // MUSIC - TIMESTAMP
 | 
					  // MUSIC - TIMESTAMP
 | 
				
			||||||
  client.createTimestamp = function (duration) {
 | 
					  client.createTimestamp = function (duration) {
 | 
				
			||||||
    var hrs = ~~(duration / 60 / 60)
 | 
					    var hrs = ~~(duration / 60 / 60)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										655
									
								
								package-lock.json
									
										
									
										generated
									
									
									
								
							
							
						
						
									
										655
									
								
								package-lock.json
									
										
									
										generated
									
									
									
								
							| 
						 | 
					@ -370,6 +370,27 @@
 | 
				
			||||||
        "sprintf-js": "~1.0.2"
 | 
					        "sprintf-js": "~1.0.2"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "array-includes": {
 | 
				
			||||||
 | 
					      "version": "3.1.1",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.1.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-c2VXaCHl7zPsvpkFsw4nxvFie4fh1ur9bpcgsVkIjqn0H/Xwdg+7fv3n2r/isyS8EBj5b06M9kHyZuIr4El6WQ==",
 | 
				
			||||||
 | 
					      "dev": true,
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "define-properties": "^1.1.3",
 | 
				
			||||||
 | 
					        "es-abstract": "^1.17.0",
 | 
				
			||||||
 | 
					        "is-string": "^1.0.5"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "array.prototype.flat": {
 | 
				
			||||||
 | 
					      "version": "1.2.3",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.3.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-gBlRZV0VSmfPIeWfuuy56XZMvbVfbEUnOXUvt3F/eUUUSyzlgLxhEX4YAEpxNAogRGehPSnfXyPtYyKAhkzQhQ==",
 | 
				
			||||||
 | 
					      "dev": true,
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "define-properties": "^1.1.3",
 | 
				
			||||||
 | 
					        "es-abstract": "^1.17.0-next.1"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "asn1": {
 | 
					    "asn1": {
 | 
				
			||||||
      "version": "0.2.4",
 | 
					      "version": "0.2.4",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz",
 | 
				
			||||||
| 
						 | 
					@ -626,6 +647,12 @@
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
 | 
				
			||||||
      "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s="
 | 
					      "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s="
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "contains-path": {
 | 
				
			||||||
 | 
					      "version": "0.1.0",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/contains-path/-/contains-path-0.1.0.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo=",
 | 
				
			||||||
 | 
					      "dev": true
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "convert-source-map": {
 | 
					    "convert-source-map": {
 | 
				
			||||||
      "version": "1.7.0",
 | 
					      "version": "1.7.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz",
 | 
				
			||||||
| 
						 | 
					@ -720,6 +747,15 @@
 | 
				
			||||||
        "strip-bom": "^4.0.0"
 | 
					        "strip-bom": "^4.0.0"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "define-properties": {
 | 
				
			||||||
 | 
					      "version": "1.1.3",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==",
 | 
				
			||||||
 | 
					      "dev": true,
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "object-keys": "^1.0.12"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "delayed-stream": {
 | 
					    "delayed-stream": {
 | 
				
			||||||
      "version": "1.0.0",
 | 
					      "version": "1.0.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
 | 
				
			||||||
| 
						 | 
					@ -803,6 +839,45 @@
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz",
 | 
				
			||||||
      "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w=="
 | 
					      "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w=="
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "error-ex": {
 | 
				
			||||||
 | 
					      "version": "1.3.2",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==",
 | 
				
			||||||
 | 
					      "dev": true,
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "is-arrayish": "^0.2.1"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "es-abstract": {
 | 
				
			||||||
 | 
					      "version": "1.17.5",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.5.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-BR9auzDbySxOcfog0tLECW8l28eRGpDpU3Dm3Hp4q/N+VtLTmyj4EUN088XZWQDW/hzj6sYRDXeOFsaAODKvpg==",
 | 
				
			||||||
 | 
					      "dev": true,
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "es-to-primitive": "^1.2.1",
 | 
				
			||||||
 | 
					        "function-bind": "^1.1.1",
 | 
				
			||||||
 | 
					        "has": "^1.0.3",
 | 
				
			||||||
 | 
					        "has-symbols": "^1.0.1",
 | 
				
			||||||
 | 
					        "is-callable": "^1.1.5",
 | 
				
			||||||
 | 
					        "is-regex": "^1.0.5",
 | 
				
			||||||
 | 
					        "object-inspect": "^1.7.0",
 | 
				
			||||||
 | 
					        "object-keys": "^1.1.1",
 | 
				
			||||||
 | 
					        "object.assign": "^4.1.0",
 | 
				
			||||||
 | 
					        "string.prototype.trimleft": "^2.1.1",
 | 
				
			||||||
 | 
					        "string.prototype.trimright": "^2.1.1"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "es-to-primitive": {
 | 
				
			||||||
 | 
					      "version": "1.2.1",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==",
 | 
				
			||||||
 | 
					      "dev": true,
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "is-callable": "^1.1.4",
 | 
				
			||||||
 | 
					        "is-date-object": "^1.0.1",
 | 
				
			||||||
 | 
					        "is-symbol": "^1.0.2"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "es6-error": {
 | 
					    "es6-error": {
 | 
				
			||||||
      "version": "4.1.1",
 | 
					      "version": "4.1.1",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz",
 | 
				
			||||||
| 
						 | 
					@ -947,6 +1022,241 @@
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "eslint-config-standard": {
 | 
				
			||||||
 | 
					      "version": "14.1.1",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-14.1.1.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-Z9B+VR+JIXRxz21udPTL9HpFMyoMUEeX1G251EQ6e05WD9aPVtVBn09XUmZ259wCMlCDmYDSZG62Hhm+ZTJcUg==",
 | 
				
			||||||
 | 
					      "dev": true
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "eslint-import-resolver-node": {
 | 
				
			||||||
 | 
					      "version": "0.3.3",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.3.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-b8crLDo0M5RSe5YG8Pu2DYBj71tSB6OvXkfzwbJU2w7y8P4/yo0MyF8jU26IEuEuHF2K5/gcAJE3LhQGqBBbVg==",
 | 
				
			||||||
 | 
					      "dev": true,
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "debug": "^2.6.9",
 | 
				
			||||||
 | 
					        "resolve": "^1.13.1"
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      "dependencies": {
 | 
				
			||||||
 | 
					        "debug": {
 | 
				
			||||||
 | 
					          "version": "2.6.9",
 | 
				
			||||||
 | 
					          "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
 | 
				
			||||||
 | 
					          "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
 | 
				
			||||||
 | 
					          "dev": true,
 | 
				
			||||||
 | 
					          "requires": {
 | 
				
			||||||
 | 
					            "ms": "2.0.0"
 | 
				
			||||||
 | 
					          }
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "ms": {
 | 
				
			||||||
 | 
					          "version": "2.0.0",
 | 
				
			||||||
 | 
					          "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
 | 
				
			||||||
 | 
					          "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
 | 
				
			||||||
 | 
					          "dev": true
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "eslint-module-utils": {
 | 
				
			||||||
 | 
					      "version": "2.6.0",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.0.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-6j9xxegbqe8/kZY8cYpcp0xhbK0EgJlg3g9mib3/miLaExuuwc3n5UEfSnU6hWMbT0FAYVvDbL9RrRgpUeQIvA==",
 | 
				
			||||||
 | 
					      "dev": true,
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "debug": "^2.6.9",
 | 
				
			||||||
 | 
					        "pkg-dir": "^2.0.0"
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      "dependencies": {
 | 
				
			||||||
 | 
					        "debug": {
 | 
				
			||||||
 | 
					          "version": "2.6.9",
 | 
				
			||||||
 | 
					          "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
 | 
				
			||||||
 | 
					          "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
 | 
				
			||||||
 | 
					          "dev": true,
 | 
				
			||||||
 | 
					          "requires": {
 | 
				
			||||||
 | 
					            "ms": "2.0.0"
 | 
				
			||||||
 | 
					          }
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "find-up": {
 | 
				
			||||||
 | 
					          "version": "2.1.0",
 | 
				
			||||||
 | 
					          "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz",
 | 
				
			||||||
 | 
					          "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=",
 | 
				
			||||||
 | 
					          "dev": true,
 | 
				
			||||||
 | 
					          "requires": {
 | 
				
			||||||
 | 
					            "locate-path": "^2.0.0"
 | 
				
			||||||
 | 
					          }
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "locate-path": {
 | 
				
			||||||
 | 
					          "version": "2.0.0",
 | 
				
			||||||
 | 
					          "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz",
 | 
				
			||||||
 | 
					          "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=",
 | 
				
			||||||
 | 
					          "dev": true,
 | 
				
			||||||
 | 
					          "requires": {
 | 
				
			||||||
 | 
					            "p-locate": "^2.0.0",
 | 
				
			||||||
 | 
					            "path-exists": "^3.0.0"
 | 
				
			||||||
 | 
					          }
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "ms": {
 | 
				
			||||||
 | 
					          "version": "2.0.0",
 | 
				
			||||||
 | 
					          "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
 | 
				
			||||||
 | 
					          "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
 | 
				
			||||||
 | 
					          "dev": true
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "p-limit": {
 | 
				
			||||||
 | 
					          "version": "1.3.0",
 | 
				
			||||||
 | 
					          "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz",
 | 
				
			||||||
 | 
					          "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==",
 | 
				
			||||||
 | 
					          "dev": true,
 | 
				
			||||||
 | 
					          "requires": {
 | 
				
			||||||
 | 
					            "p-try": "^1.0.0"
 | 
				
			||||||
 | 
					          }
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "p-locate": {
 | 
				
			||||||
 | 
					          "version": "2.0.0",
 | 
				
			||||||
 | 
					          "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz",
 | 
				
			||||||
 | 
					          "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=",
 | 
				
			||||||
 | 
					          "dev": true,
 | 
				
			||||||
 | 
					          "requires": {
 | 
				
			||||||
 | 
					            "p-limit": "^1.1.0"
 | 
				
			||||||
 | 
					          }
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "p-try": {
 | 
				
			||||||
 | 
					          "version": "1.0.0",
 | 
				
			||||||
 | 
					          "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz",
 | 
				
			||||||
 | 
					          "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=",
 | 
				
			||||||
 | 
					          "dev": true
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "path-exists": {
 | 
				
			||||||
 | 
					          "version": "3.0.0",
 | 
				
			||||||
 | 
					          "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
 | 
				
			||||||
 | 
					          "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
 | 
				
			||||||
 | 
					          "dev": true
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "pkg-dir": {
 | 
				
			||||||
 | 
					          "version": "2.0.0",
 | 
				
			||||||
 | 
					          "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz",
 | 
				
			||||||
 | 
					          "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=",
 | 
				
			||||||
 | 
					          "dev": true,
 | 
				
			||||||
 | 
					          "requires": {
 | 
				
			||||||
 | 
					            "find-up": "^2.1.0"
 | 
				
			||||||
 | 
					          }
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "eslint-plugin-es": {
 | 
				
			||||||
 | 
					      "version": "3.0.0",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.0.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-6/Jb/J/ZvSebydwbBJO1R9E5ky7YeElfK56Veh7e4QGFHCXoIXGH9HhVz+ibJLM3XJ1XjP+T7rKBLUa/Y7eIng==",
 | 
				
			||||||
 | 
					      "dev": true,
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "eslint-utils": "^2.0.0",
 | 
				
			||||||
 | 
					        "regexpp": "^3.0.0"
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      "dependencies": {
 | 
				
			||||||
 | 
					        "eslint-utils": {
 | 
				
			||||||
 | 
					          "version": "2.0.0",
 | 
				
			||||||
 | 
					          "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.0.0.tgz",
 | 
				
			||||||
 | 
					          "integrity": "sha512-0HCPuJv+7Wv1bACm8y5/ECVfYdfsAm9xmVb7saeFlxjPYALefjhbYoCkBjPdPzGH8wWyTpAez82Fh3VKYEZ8OA==",
 | 
				
			||||||
 | 
					          "dev": true,
 | 
				
			||||||
 | 
					          "requires": {
 | 
				
			||||||
 | 
					            "eslint-visitor-keys": "^1.1.0"
 | 
				
			||||||
 | 
					          }
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "regexpp": {
 | 
				
			||||||
 | 
					          "version": "3.0.0",
 | 
				
			||||||
 | 
					          "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.0.0.tgz",
 | 
				
			||||||
 | 
					          "integrity": "sha512-Z+hNr7RAVWxznLPuA7DIh8UNX1j9CDrUQxskw9IrBE1Dxue2lyXT+shqEIeLUjrokxIP8CMy1WkjgG3rTsd5/g==",
 | 
				
			||||||
 | 
					          "dev": true
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "eslint-plugin-import": {
 | 
				
			||||||
 | 
					      "version": "2.20.2",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.20.2.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-FObidqpXrR8OnCh4iNsxy+WACztJLXAHBO5hK79T1Hc77PgQZkyDGA5Ag9xAvRpglvLNxhH/zSmZ70/pZ31dHg==",
 | 
				
			||||||
 | 
					      "dev": true,
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "array-includes": "^3.0.3",
 | 
				
			||||||
 | 
					        "array.prototype.flat": "^1.2.1",
 | 
				
			||||||
 | 
					        "contains-path": "^0.1.0",
 | 
				
			||||||
 | 
					        "debug": "^2.6.9",
 | 
				
			||||||
 | 
					        "doctrine": "1.5.0",
 | 
				
			||||||
 | 
					        "eslint-import-resolver-node": "^0.3.2",
 | 
				
			||||||
 | 
					        "eslint-module-utils": "^2.4.1",
 | 
				
			||||||
 | 
					        "has": "^1.0.3",
 | 
				
			||||||
 | 
					        "minimatch": "^3.0.4",
 | 
				
			||||||
 | 
					        "object.values": "^1.1.0",
 | 
				
			||||||
 | 
					        "read-pkg-up": "^2.0.0",
 | 
				
			||||||
 | 
					        "resolve": "^1.12.0"
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      "dependencies": {
 | 
				
			||||||
 | 
					        "debug": {
 | 
				
			||||||
 | 
					          "version": "2.6.9",
 | 
				
			||||||
 | 
					          "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
 | 
				
			||||||
 | 
					          "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
 | 
				
			||||||
 | 
					          "dev": true,
 | 
				
			||||||
 | 
					          "requires": {
 | 
				
			||||||
 | 
					            "ms": "2.0.0"
 | 
				
			||||||
 | 
					          }
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "doctrine": {
 | 
				
			||||||
 | 
					          "version": "1.5.0",
 | 
				
			||||||
 | 
					          "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-1.5.0.tgz",
 | 
				
			||||||
 | 
					          "integrity": "sha1-N53Ocw9hZvds76TmcHoVmwLFpvo=",
 | 
				
			||||||
 | 
					          "dev": true,
 | 
				
			||||||
 | 
					          "requires": {
 | 
				
			||||||
 | 
					            "esutils": "^2.0.2",
 | 
				
			||||||
 | 
					            "isarray": "^1.0.0"
 | 
				
			||||||
 | 
					          }
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "ms": {
 | 
				
			||||||
 | 
					          "version": "2.0.0",
 | 
				
			||||||
 | 
					          "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
 | 
				
			||||||
 | 
					          "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
 | 
				
			||||||
 | 
					          "dev": true
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "eslint-plugin-node": {
 | 
				
			||||||
 | 
					      "version": "11.1.0",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==",
 | 
				
			||||||
 | 
					      "dev": true,
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "eslint-plugin-es": "^3.0.0",
 | 
				
			||||||
 | 
					        "eslint-utils": "^2.0.0",
 | 
				
			||||||
 | 
					        "ignore": "^5.1.1",
 | 
				
			||||||
 | 
					        "minimatch": "^3.0.4",
 | 
				
			||||||
 | 
					        "resolve": "^1.10.1",
 | 
				
			||||||
 | 
					        "semver": "^6.1.0"
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      "dependencies": {
 | 
				
			||||||
 | 
					        "eslint-utils": {
 | 
				
			||||||
 | 
					          "version": "2.0.0",
 | 
				
			||||||
 | 
					          "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.0.0.tgz",
 | 
				
			||||||
 | 
					          "integrity": "sha512-0HCPuJv+7Wv1bACm8y5/ECVfYdfsAm9xmVb7saeFlxjPYALefjhbYoCkBjPdPzGH8wWyTpAez82Fh3VKYEZ8OA==",
 | 
				
			||||||
 | 
					          "dev": true,
 | 
				
			||||||
 | 
					          "requires": {
 | 
				
			||||||
 | 
					            "eslint-visitor-keys": "^1.1.0"
 | 
				
			||||||
 | 
					          }
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "ignore": {
 | 
				
			||||||
 | 
					          "version": "5.1.4",
 | 
				
			||||||
 | 
					          "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.4.tgz",
 | 
				
			||||||
 | 
					          "integrity": "sha512-MzbUSahkTW1u7JpKKjY7LCARd1fU5W2rLdxlM4kdkayuCwZImjkpluF9CM1aLewYJguPDqewLam18Y6AU69A8A==",
 | 
				
			||||||
 | 
					          "dev": true
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "eslint-plugin-promise": {
 | 
				
			||||||
 | 
					      "version": "4.2.1",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-4.2.1.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-VoM09vT7bfA7D+upt+FjeBO5eHIJQBUWki1aPvB+vbNiHS3+oGIJGIeyBtKQTME6UPXXy3vV07OL1tHd3ANuDw==",
 | 
				
			||||||
 | 
					      "dev": true
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "eslint-plugin-standard": {
 | 
				
			||||||
 | 
					      "version": "4.0.1",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/eslint-plugin-standard/-/eslint-plugin-standard-4.0.1.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-v/KBnfyaOMPmZc/dmc6ozOdWqekGp7bBGq4jLAecEfPGmfKiWS4sA8sC0LqiV9w5qmXAtXVn4M3p1jSyhY85SQ==",
 | 
				
			||||||
 | 
					      "dev": true
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "eslint-scope": {
 | 
					    "eslint-scope": {
 | 
				
			||||||
      "version": "5.0.0",
 | 
					      "version": "5.0.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.0.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.0.0.tgz",
 | 
				
			||||||
| 
						 | 
					@ -1169,6 +1479,12 @@
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
 | 
				
			||||||
      "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8="
 | 
					      "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8="
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "function-bind": {
 | 
				
			||||||
 | 
					      "version": "1.1.1",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
 | 
				
			||||||
 | 
					      "dev": true
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "functional-red-black-tree": {
 | 
					    "functional-red-black-tree": {
 | 
				
			||||||
      "version": "1.0.1",
 | 
					      "version": "1.0.1",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz",
 | 
				
			||||||
| 
						 | 
					@ -1251,11 +1567,26 @@
 | 
				
			||||||
        "har-schema": "^1.0.5"
 | 
					        "har-schema": "^1.0.5"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "has": {
 | 
				
			||||||
 | 
					      "version": "1.0.3",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
 | 
				
			||||||
 | 
					      "dev": true,
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "function-bind": "^1.1.1"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "has-flag": {
 | 
					    "has-flag": {
 | 
				
			||||||
      "version": "4.0.0",
 | 
					      "version": "4.0.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
 | 
				
			||||||
      "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
 | 
					      "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "has-symbols": {
 | 
				
			||||||
 | 
					      "version": "1.0.1",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==",
 | 
				
			||||||
 | 
					      "dev": true
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "hasha": {
 | 
					    "hasha": {
 | 
				
			||||||
      "version": "5.2.0",
 | 
					      "version": "5.2.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/hasha/-/hasha-5.2.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/hasha/-/hasha-5.2.0.tgz",
 | 
				
			||||||
| 
						 | 
					@ -1265,6 +1596,14 @@
 | 
				
			||||||
        "type-fest": "^0.8.0"
 | 
					        "type-fest": "^0.8.0"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "hastebin-gen": {
 | 
				
			||||||
 | 
					      "version": "2.0.5",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/hastebin-gen/-/hastebin-gen-2.0.5.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-At1LaKtcqh2jiP8xfE2sDGT9IshIki6FqsgLwn2y7FzAvlFJRtpUsSPh3yWjWIQIvxi/GPF07IBqSI8WhPL/gQ==",
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "node-fetch": "^2.6.0"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "hawk": {
 | 
					    "hawk": {
 | 
				
			||||||
      "version": "3.1.3",
 | 
					      "version": "3.1.3",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz",
 | 
				
			||||||
| 
						 | 
					@ -1281,6 +1620,12 @@
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz",
 | 
				
			||||||
      "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0="
 | 
					      "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0="
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "hosted-git-info": {
 | 
				
			||||||
 | 
					      "version": "2.8.8",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==",
 | 
				
			||||||
 | 
					      "dev": true
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "html-entities": {
 | 
					    "html-entities": {
 | 
				
			||||||
      "version": "1.2.1",
 | 
					      "version": "1.2.1",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-1.2.1.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-1.2.1.tgz",
 | 
				
			||||||
| 
						 | 
					@ -1440,6 +1785,24 @@
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "is-arrayish": {
 | 
				
			||||||
 | 
					      "version": "0.2.1",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=",
 | 
				
			||||||
 | 
					      "dev": true
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "is-callable": {
 | 
				
			||||||
 | 
					      "version": "1.1.5",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.5.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q==",
 | 
				
			||||||
 | 
					      "dev": true
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "is-date-object": {
 | 
				
			||||||
 | 
					      "version": "1.0.2",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==",
 | 
				
			||||||
 | 
					      "dev": true
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "is-docker": {
 | 
					    "is-docker": {
 | 
				
			||||||
      "version": "2.0.0",
 | 
					      "version": "2.0.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.0.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.0.0.tgz",
 | 
				
			||||||
| 
						 | 
					@ -1471,11 +1834,35 @@
 | 
				
			||||||
      "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=",
 | 
					      "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=",
 | 
				
			||||||
      "dev": true
 | 
					      "dev": true
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "is-regex": {
 | 
				
			||||||
 | 
					      "version": "1.0.5",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.5.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ==",
 | 
				
			||||||
 | 
					      "dev": true,
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "has": "^1.0.3"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "is-stream": {
 | 
					    "is-stream": {
 | 
				
			||||||
      "version": "2.0.0",
 | 
					      "version": "2.0.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz",
 | 
				
			||||||
      "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw=="
 | 
					      "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw=="
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "is-string": {
 | 
				
			||||||
 | 
					      "version": "1.0.5",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.5.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ==",
 | 
				
			||||||
 | 
					      "dev": true
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "is-symbol": {
 | 
				
			||||||
 | 
					      "version": "1.0.3",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==",
 | 
				
			||||||
 | 
					      "dev": true,
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "has-symbols": "^1.0.1"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "is-typedarray": {
 | 
					    "is-typedarray": {
 | 
				
			||||||
      "version": "1.0.0",
 | 
					      "version": "1.0.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
 | 
				
			||||||
| 
						 | 
					@ -1486,6 +1873,12 @@
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz",
 | 
				
			||||||
      "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA=="
 | 
					      "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA=="
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "isarray": {
 | 
				
			||||||
 | 
					      "version": "1.0.0",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
 | 
				
			||||||
 | 
					      "dev": true
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "isexe": {
 | 
					    "isexe": {
 | 
				
			||||||
      "version": "2.0.0",
 | 
					      "version": "2.0.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
 | 
				
			||||||
| 
						 | 
					@ -1668,6 +2061,26 @@
 | 
				
			||||||
        "type-check": "~0.3.2"
 | 
					        "type-check": "~0.3.2"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "load-json-file": {
 | 
				
			||||||
 | 
					      "version": "2.0.0",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=",
 | 
				
			||||||
 | 
					      "dev": true,
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "graceful-fs": "^4.1.2",
 | 
				
			||||||
 | 
					        "parse-json": "^2.2.0",
 | 
				
			||||||
 | 
					        "pify": "^2.0.0",
 | 
				
			||||||
 | 
					        "strip-bom": "^3.0.0"
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      "dependencies": {
 | 
				
			||||||
 | 
					        "strip-bom": {
 | 
				
			||||||
 | 
					          "version": "3.0.0",
 | 
				
			||||||
 | 
					          "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
 | 
				
			||||||
 | 
					          "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=",
 | 
				
			||||||
 | 
					          "dev": true
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "locate-path": {
 | 
					    "locate-path": {
 | 
				
			||||||
      "version": "5.0.0",
 | 
					      "version": "5.0.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
 | 
				
			||||||
| 
						 | 
					@ -1794,6 +2207,26 @@
 | 
				
			||||||
        "process-on-spawn": "^1.0.0"
 | 
					        "process-on-spawn": "^1.0.0"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "normalize-package-data": {
 | 
				
			||||||
 | 
					      "version": "2.5.0",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==",
 | 
				
			||||||
 | 
					      "dev": true,
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "hosted-git-info": "^2.1.4",
 | 
				
			||||||
 | 
					        "resolve": "^1.10.0",
 | 
				
			||||||
 | 
					        "semver": "2 || 3 || 4 || 5",
 | 
				
			||||||
 | 
					        "validate-npm-package-license": "^3.0.1"
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      "dependencies": {
 | 
				
			||||||
 | 
					        "semver": {
 | 
				
			||||||
 | 
					          "version": "5.7.1",
 | 
				
			||||||
 | 
					          "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
 | 
				
			||||||
 | 
					          "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
 | 
				
			||||||
 | 
					          "dev": true
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "nth-check": {
 | 
					    "nth-check": {
 | 
				
			||||||
      "version": "1.0.2",
 | 
					      "version": "1.0.2",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz",
 | 
				
			||||||
| 
						 | 
					@ -1842,6 +2275,42 @@
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz",
 | 
				
			||||||
      "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM="
 | 
					      "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM="
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "object-inspect": {
 | 
				
			||||||
 | 
					      "version": "1.7.0",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.7.0.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==",
 | 
				
			||||||
 | 
					      "dev": true
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "object-keys": {
 | 
				
			||||||
 | 
					      "version": "1.1.1",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==",
 | 
				
			||||||
 | 
					      "dev": true
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "object.assign": {
 | 
				
			||||||
 | 
					      "version": "4.1.0",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==",
 | 
				
			||||||
 | 
					      "dev": true,
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "define-properties": "^1.1.2",
 | 
				
			||||||
 | 
					        "function-bind": "^1.1.1",
 | 
				
			||||||
 | 
					        "has-symbols": "^1.0.0",
 | 
				
			||||||
 | 
					        "object-keys": "^1.0.11"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "object.values": {
 | 
				
			||||||
 | 
					      "version": "1.1.1",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.1.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-WTa54g2K8iu0kmS/us18jEmdv1a4Wi//BZ/DTVYEcH0XhLM5NYdpDHja3gt57VrZLcNAO2WGA+KpWsDBaHt6eA==",
 | 
				
			||||||
 | 
					      "dev": true,
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "define-properties": "^1.1.3",
 | 
				
			||||||
 | 
					        "es-abstract": "^1.17.0-next.1",
 | 
				
			||||||
 | 
					        "function-bind": "^1.1.1",
 | 
				
			||||||
 | 
					        "has": "^1.0.3"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "once": {
 | 
					    "once": {
 | 
				
			||||||
      "version": "1.4.0",
 | 
					      "version": "1.4.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
 | 
				
			||||||
| 
						 | 
					@ -1928,6 +2397,15 @@
 | 
				
			||||||
        "callsites": "^3.0.0"
 | 
					        "callsites": "^3.0.0"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "parse-json": {
 | 
				
			||||||
 | 
					      "version": "2.2.0",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=",
 | 
				
			||||||
 | 
					      "dev": true,
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "error-ex": "^1.2.0"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "path-exists": {
 | 
					    "path-exists": {
 | 
				
			||||||
      "version": "4.0.0",
 | 
					      "version": "4.0.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
 | 
				
			||||||
| 
						 | 
					@ -1948,11 +2426,26 @@
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz",
 | 
				
			||||||
      "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw=="
 | 
					      "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw=="
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "path-type": {
 | 
				
			||||||
 | 
					      "version": "2.0.0",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=",
 | 
				
			||||||
 | 
					      "dev": true,
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "pify": "^2.0.0"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "performance-now": {
 | 
					    "performance-now": {
 | 
				
			||||||
      "version": "0.2.0",
 | 
					      "version": "0.2.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-0.2.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-0.2.0.tgz",
 | 
				
			||||||
      "integrity": "sha1-M+8wxcd9TqIcWlOGnZG1bY8lVeU="
 | 
					      "integrity": "sha1-M+8wxcd9TqIcWlOGnZG1bY8lVeU="
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "pify": {
 | 
				
			||||||
 | 
					      "version": "2.3.0",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
 | 
				
			||||||
 | 
					      "dev": true
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "pkg-dir": {
 | 
					    "pkg-dir": {
 | 
				
			||||||
      "version": "4.2.0",
 | 
					      "version": "4.2.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz",
 | 
				
			||||||
| 
						 | 
					@ -1996,6 +2489,78 @@
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/qs/-/qs-6.4.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/qs/-/qs-6.4.0.tgz",
 | 
				
			||||||
      "integrity": "sha1-E+JtKK1rD/qpExLNO/cI7TUecjM="
 | 
					      "integrity": "sha1-E+JtKK1rD/qpExLNO/cI7TUecjM="
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "read-pkg": {
 | 
				
			||||||
 | 
					      "version": "2.0.0",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=",
 | 
				
			||||||
 | 
					      "dev": true,
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "load-json-file": "^2.0.0",
 | 
				
			||||||
 | 
					        "normalize-package-data": "^2.3.2",
 | 
				
			||||||
 | 
					        "path-type": "^2.0.0"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "read-pkg-up": {
 | 
				
			||||||
 | 
					      "version": "2.0.0",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=",
 | 
				
			||||||
 | 
					      "dev": true,
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "find-up": "^2.0.0",
 | 
				
			||||||
 | 
					        "read-pkg": "^2.0.0"
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      "dependencies": {
 | 
				
			||||||
 | 
					        "find-up": {
 | 
				
			||||||
 | 
					          "version": "2.1.0",
 | 
				
			||||||
 | 
					          "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz",
 | 
				
			||||||
 | 
					          "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=",
 | 
				
			||||||
 | 
					          "dev": true,
 | 
				
			||||||
 | 
					          "requires": {
 | 
				
			||||||
 | 
					            "locate-path": "^2.0.0"
 | 
				
			||||||
 | 
					          }
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "locate-path": {
 | 
				
			||||||
 | 
					          "version": "2.0.0",
 | 
				
			||||||
 | 
					          "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz",
 | 
				
			||||||
 | 
					          "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=",
 | 
				
			||||||
 | 
					          "dev": true,
 | 
				
			||||||
 | 
					          "requires": {
 | 
				
			||||||
 | 
					            "p-locate": "^2.0.0",
 | 
				
			||||||
 | 
					            "path-exists": "^3.0.0"
 | 
				
			||||||
 | 
					          }
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "p-limit": {
 | 
				
			||||||
 | 
					          "version": "1.3.0",
 | 
				
			||||||
 | 
					          "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz",
 | 
				
			||||||
 | 
					          "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==",
 | 
				
			||||||
 | 
					          "dev": true,
 | 
				
			||||||
 | 
					          "requires": {
 | 
				
			||||||
 | 
					            "p-try": "^1.0.0"
 | 
				
			||||||
 | 
					          }
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "p-locate": {
 | 
				
			||||||
 | 
					          "version": "2.0.0",
 | 
				
			||||||
 | 
					          "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz",
 | 
				
			||||||
 | 
					          "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=",
 | 
				
			||||||
 | 
					          "dev": true,
 | 
				
			||||||
 | 
					          "requires": {
 | 
				
			||||||
 | 
					            "p-limit": "^1.1.0"
 | 
				
			||||||
 | 
					          }
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "p-try": {
 | 
				
			||||||
 | 
					          "version": "1.0.0",
 | 
				
			||||||
 | 
					          "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz",
 | 
				
			||||||
 | 
					          "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=",
 | 
				
			||||||
 | 
					          "dev": true
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "path-exists": {
 | 
				
			||||||
 | 
					          "version": "3.0.0",
 | 
				
			||||||
 | 
					          "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
 | 
				
			||||||
 | 
					          "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
 | 
				
			||||||
 | 
					          "dev": true
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "regexpp": {
 | 
					    "regexpp": {
 | 
				
			||||||
      "version": "2.0.1",
 | 
					      "version": "2.0.1",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz",
 | 
				
			||||||
| 
						 | 
					@ -2121,9 +2686,9 @@
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "rxjs": {
 | 
					    "rxjs": {
 | 
				
			||||||
      "version": "6.5.4",
 | 
					      "version": "6.5.5",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.5.tgz",
 | 
				
			||||||
      "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==",
 | 
					      "integrity": "sha512-WfQI+1gohdf0Dai/Bbmk5L5ItH5tYqm3ki2c5GdWhKjalzjg93N3avFjVStyZZz+A2Em+ZxKH5bNghw9UeylGQ==",
 | 
				
			||||||
      "dev": true,
 | 
					      "dev": true,
 | 
				
			||||||
      "requires": {
 | 
					      "requires": {
 | 
				
			||||||
        "tslib": "^1.9.0"
 | 
					        "tslib": "^1.9.0"
 | 
				
			||||||
| 
						 | 
					@ -2246,6 +2811,38 @@
 | 
				
			||||||
        "which": "^2.0.1"
 | 
					        "which": "^2.0.1"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "spdx-correct": {
 | 
				
			||||||
 | 
					      "version": "3.1.0",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==",
 | 
				
			||||||
 | 
					      "dev": true,
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "spdx-expression-parse": "^3.0.0",
 | 
				
			||||||
 | 
					        "spdx-license-ids": "^3.0.0"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "spdx-exceptions": {
 | 
				
			||||||
 | 
					      "version": "2.2.0",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==",
 | 
				
			||||||
 | 
					      "dev": true
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "spdx-expression-parse": {
 | 
				
			||||||
 | 
					      "version": "3.0.0",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==",
 | 
				
			||||||
 | 
					      "dev": true,
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "spdx-exceptions": "^2.1.0",
 | 
				
			||||||
 | 
					        "spdx-license-ids": "^3.0.0"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "spdx-license-ids": {
 | 
				
			||||||
 | 
					      "version": "3.0.5",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==",
 | 
				
			||||||
 | 
					      "dev": true
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "sprintf-js": {
 | 
					    "sprintf-js": {
 | 
				
			||||||
      "version": "1.0.3",
 | 
					      "version": "1.0.3",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
 | 
				
			||||||
| 
						 | 
					@ -2294,6 +2891,48 @@
 | 
				
			||||||
        "strip-ansi": "^6.0.0"
 | 
					        "strip-ansi": "^6.0.0"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "string.prototype.trimend": {
 | 
				
			||||||
 | 
					      "version": "1.0.0",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.0.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-EEJnGqa/xNfIg05SxiPSqRS7S9qwDhYts1TSLR1BQfYUfPe1stofgGKvwERK9+9yf+PpfBMlpBaCHucXGPQfUA==",
 | 
				
			||||||
 | 
					      "dev": true,
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "define-properties": "^1.1.3",
 | 
				
			||||||
 | 
					        "es-abstract": "^1.17.5"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "string.prototype.trimleft": {
 | 
				
			||||||
 | 
					      "version": "2.1.2",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.2.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-gCA0tza1JBvqr3bfAIFJGqfdRTyPae82+KTnm3coDXkZN9wnuW3HjGgN386D7hfv5CHQYCI022/rJPVlqXyHSw==",
 | 
				
			||||||
 | 
					      "dev": true,
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "define-properties": "^1.1.3",
 | 
				
			||||||
 | 
					        "es-abstract": "^1.17.5",
 | 
				
			||||||
 | 
					        "string.prototype.trimstart": "^1.0.0"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "string.prototype.trimright": {
 | 
				
			||||||
 | 
					      "version": "2.1.2",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.1.2.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-ZNRQ7sY3KroTaYjRS6EbNiiHrOkjihL9aQE/8gfQ4DtAC/aEBRHFJa44OmoWxGGqXuJlfKkZW4WcXErGr+9ZFg==",
 | 
				
			||||||
 | 
					      "dev": true,
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "define-properties": "^1.1.3",
 | 
				
			||||||
 | 
					        "es-abstract": "^1.17.5",
 | 
				
			||||||
 | 
					        "string.prototype.trimend": "^1.0.0"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "string.prototype.trimstart": {
 | 
				
			||||||
 | 
					      "version": "1.0.0",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.0.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-iCP8g01NFYiiBOnwG1Xc3WZLyoo+RuBymwIlWncShXDDJYWN6DbnM3odslBJdgCdRlq94B5s63NWAZlcn2CS4w==",
 | 
				
			||||||
 | 
					      "dev": true,
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "define-properties": "^1.1.3",
 | 
				
			||||||
 | 
					        "es-abstract": "^1.17.5"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "stringstream": {
 | 
					    "stringstream": {
 | 
				
			||||||
      "version": "0.0.6",
 | 
					      "version": "0.0.6",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.6.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.6.tgz",
 | 
				
			||||||
| 
						 | 
					@ -2520,6 +3159,16 @@
 | 
				
			||||||
      "integrity": "sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g==",
 | 
					      "integrity": "sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g==",
 | 
				
			||||||
      "dev": true
 | 
					      "dev": true
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "validate-npm-package-license": {
 | 
				
			||||||
 | 
					      "version": "3.0.4",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==",
 | 
				
			||||||
 | 
					      "dev": true,
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "spdx-correct": "^3.0.0",
 | 
				
			||||||
 | 
					        "spdx-expression-parse": "^3.0.0"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "verror": {
 | 
					    "verror": {
 | 
				
			||||||
      "version": "1.10.0",
 | 
					      "version": "1.10.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz",
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -8,8 +8,8 @@
 | 
				
			||||||
    "discord.js": "^12.1.1",
 | 
					    "discord.js": "^12.1.1",
 | 
				
			||||||
    "dotenv": "^8.2.0",
 | 
					    "dotenv": "^8.2.0",
 | 
				
			||||||
    "eslint-config-airbnb-base": "^14.1.0",
 | 
					    "eslint-config-airbnb-base": "^14.1.0",
 | 
				
			||||||
    "eslint-plugin-import": "^2.20.2",
 | 
					 | 
				
			||||||
    "get-youtube-id": "^1.0.1",
 | 
					    "get-youtube-id": "^1.0.1",
 | 
				
			||||||
 | 
					    "hastebin-gen": "^2.0.5",
 | 
				
			||||||
    "is-docker": "^2.0.0",
 | 
					    "is-docker": "^2.0.0",
 | 
				
			||||||
    "moment": "^2.24.0",
 | 
					    "moment": "^2.24.0",
 | 
				
			||||||
    "node-fetch": "^2.6.0",
 | 
					    "node-fetch": "^2.6.0",
 | 
				
			||||||
| 
						 | 
					@ -19,7 +19,12 @@
 | 
				
			||||||
    "ytdl-core-discord": "^1.1.0"
 | 
					    "ytdl-core-discord": "^1.1.0"
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
  "devDependencies": {
 | 
					  "devDependencies": {
 | 
				
			||||||
    "eslint": "^6.8.0"
 | 
					    "eslint": "^6.8.0",
 | 
				
			||||||
 | 
					    "eslint-config-standard": "^14.1.1",
 | 
				
			||||||
 | 
					    "eslint-plugin-import": "^2.20.2",
 | 
				
			||||||
 | 
					    "eslint-plugin-node": "^11.1.0",
 | 
				
			||||||
 | 
					    "eslint-plugin-promise": "^4.2.1",
 | 
				
			||||||
 | 
					    "eslint-plugin-standard": "^4.0.1"
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
  "scripts": {
 | 
					  "scripts": {
 | 
				
			||||||
    "test": "echo \"Error: no test specified\" && exit 1"
 | 
					    "test": "echo \"Error: no test specified\" && exit 1"
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue