31 lines
		
	
	
		
			1,019 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			31 lines
		
	
	
		
			1,019 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
const { client, logger } = require('../index');
 | 
						|
 | 
						|
module.exports.run = () => {
 | 
						|
    return new Promise((resolve, reject) => {
 | 
						|
        const token = process.env.BOT_TOKEN;
 | 
						|
        if (!token) {
 | 
						|
            logger.error('No bot token provided. Please provide the bot token as environment variable \'BOT_TOKEN\'.');
 | 
						|
            process.exit(1);
 | 
						|
        }
 | 
						|
 | 
						|
        logger.info('Logging in');
 | 
						|
        const loginStartTime = Date.now();
 | 
						|
        client.login(token)
 | 
						|
            .catch(error => {
 | 
						|
                logger.error(`Failed to log in\n${error}`);
 | 
						|
                process.exit(1);
 | 
						|
            });
 | 
						|
 | 
						|
        client.on('ready', () => {
 | 
						|
            logger.done(
 | 
						|
                `Logged in as ${client.user.tag}\n` + 
 | 
						|
                logger.createBox([
 | 
						|
                    `Login took ${Date.now() - loginStartTime}ms`,
 | 
						|
                    `${client.guilds.cache.size} cached guilds`,
 | 
						|
                    `${client.users.cache.size} cached users`
 | 
						|
                ])
 | 
						|
            );
 | 
						|
            resolve();
 | 
						|
        });
 | 
						|
    });
 | 
						|
} |