MiWatchKleaner/lib/common.js
2020-08-27 10:28:54 +01:00

61 lines
2.0 KiB
JavaScript

const chalk = require('chalk');
const clear = require('clear');
const figlet = require('figlet');
const fs = require('fs')
var pjson = require('../package.json');
const fetch = require('node-fetch');
module.exports = {
header: (page) => {
clear();
console.log(
chalk.red(
figlet.textSync('MiWatch Kleaner', {
horizontalLayout: 'full'
})
)
);
console.log(chalk.red(' ' + pjson.version));
console.log();
console.log(
chalk.red(
'-------------------------------------------------------------------------------------------------------'
)
)
console.log(chalk.blue(page))
module.exports.ipCheck()
console.log(chalk.red('----------'))
},
pause: async (time) => {
await new Promise(resolve => setTimeout(resolve, time));
},
ipCheck: async () => {
const miwatchData = JSON.parse(fs.readFileSync('./data/MiWatch.json', 'utf8'));
if (miwatchData.ipAddress === "") {
console.log(chalk.white('MiWatch IP: ') + chalk.red('Not Connected'))
} else {
console.log(chalk.white('MiWatch IP: ' + chalk.green(miwatchData.ipAddress)))
}
},
downloadFile: async (url, path) => {
const res = await fetch(url);
await new Promise((resolve, reject) => {
const fileStream = fs.createWriteStream(path);
res.body.pipe(fileStream);
res.body.on("error", (err) => {
reject(err);
});
fileStream.on("finish", function() {
resolve();
});
});
},
getCompatibleAppsList: async () => {
let settings = { method: "Get" };
const response = await fetch("http://kithub.cf/Karl/MiWatchKleaner-APKs/raw/master/compatibleApps.json", settings)
.then(res => res.json())
return response
},
}