const logger = require('consola');
const fs = require('fs');
const process = require('process');

initDir();
initAccountFileIfNotExisted();

function initDir() {
    // make sure all dir has been created
    const dirList = [
        __dirname + '/../.profile',
        __dirname + '/../.profile/cookie',
        __dirname + '/../.profile/data',
        __dirname + '/../.profile/data/jobs',
    ];

    dirList.forEach(dir => {
        if (!fs.existsSync(dir)) {
            fs.mkdirSync(dir);
        }
    });
}

function initAccountFileIfNotExisted() {
    const targetFile = __dirname + '/../.profile/accounts.json';
    const sampleFile = __dirname + '/../accounts.sample.json';
    if (!fs.existsSync(targetFile)) {
        fs.copyFileSync(sampleFile, targetFile);
        logger.info('初始化 accounts.json 文件成功, 默认的 melody key 为： melody');
    }
}

module.exports = async function() {
    logger.info('Melody 服务启动成功，使用 TuneHub 作为主要音乐源');

    // TODO: 可以在这里添加对 TuneHub 连接性的检查
}