Merge branch '3.3.0' of Karl/MiWatchKleaner into master

This commit is contained in:
Karl 2020-09-15 06:46:14 -05:00 committed by Gogs
commit f0fa671d82
22 changed files with 435 additions and 108 deletions

8
app.js
View File

@ -1,3 +1,11 @@
const settings = require("settings-store")
settings.init({
appName: "MiWatchKleaner", //required,
// publisherName: "Bar", //optional
// reverseDNS: "com.bar.foo" //required for macOS
})
const pages = require('./pages/pages')
pages.selectLanguage()

View File

@ -1,45 +1,212 @@
{
"apps": [
"com.android.messaging",
"com.google.android.clockwork.flashlight",
"com.google.android.clockwork.gestures.tutorial",
"com.google.android.clockwork.lesetup",
"com.google.android.inputmethod.pinyin",
"com.google.android.theme.baiji.default",
"com.google.android.wearable.frameworkpackagestubs",
"com.google.android.wearable.localedition.overlay.cmiit",
"com.google.android.wearable.overlay.common.baiji",
"com.google.android.wearable.overlay.helium.baiji",
"com.google.android.wearable.overlay.home.baiji",
"com.google.android.wearable.overlay.home.baiji.tiles",
"com.gotokeep.keep",
"com.onetrack.watch",
"com.qb.qtranslator",
"com.sogou.ime.wear",
"com.sogou.map.android.maps",
"com.tencent.qqmusicwatch",
"com.tigerbrokers.stock",
"com.umetrip.android.msky.app",
"com.xiaomi.mihome",
"com.xiaomi.wear.anonymous.xiaoai",
"com.xiaomi.wear.calculator",
"com.xiaomi.wear.camera",
"com.xiaomi.wear.card",
"com.xiaomi.wear.charging",
"com.xiaomi.wear.compass",
"com.xiaomi.wear.deskclock",
"com.xiaomi.wear.hotwordle",
"com.xiaomi.wear.market",
"com.xiaomi.wear.mqs",
"com.xiaomi.wear.pressure",
"com.xiaomi.wear.setupprovider",
"com.xiaomi.wear.tutorial",
"com.xiaomi.wear.watchface.album",
"com.xiaomi.wear.watchface.art",
"com.xiaomi.wear.watchface.classic",
"com.xiaomi.wear.watchface.decomposite",
"com.xiaomi.wear.watchface.function",
"com.ximalayaos.wear.common",
"org.codeaurora.ims"
]
}
[
{
"name": "com.android.messaging",
"klean": "X",
"global": ""
},
{
"name": "com.google.android.clockwork.flashlight",
"klean": "X",
"global": ""
},
{
"name": "com.google.android.clockwork.gestures.tutorial",
"klean": "X",
"global": ""
},
{
"name": "com.google.android.clockwork.lesetup",
"klean": "X",
"global": ""
},
{
"name": "com.google.android.inputmethod.pinyin",
"klean": "X",
"global": ""
},
{
"name": "com.google.android.theme.baiji.default",
"klean": "X",
"global": ""
},
{
"name": "com.google.android.wearable.frameworkpackagestubs",
"klean": "",
"global": "X"
},
{
"name": "com.google.android.wearable.localedition.overlay.cmiit",
"klean": "",
"global": "X"
},
{
"name": "com.google.android.wearable.overlay.common.baiji",
"klean": "",
"global": "X"
},
{
"name": "com.google.android.wearable.overlay.helium.baiji",
"klean": "",
"global": "X"
},
{
"name": "com.google.android.wearable.overlay.home.baiji",
"klean": "",
"global": "X"
},
{
"name": "com.google.android.wearable.overlay.home.baiji.tiles",
"klean": "",
"global": "X"
},
{
"name": "com.gotokeep.keep",
"klean": "X",
"global": ""
},
{
"name": "com.onetrack.watch",
"klean": "X",
"global": ""
},
{
"name": "com.qb.qtranslator",
"klean": "X",
"global": ""
},
{
"name": "com.sogou.ime.wear",
"klean": "X",
"global": ""
},
{
"name": "com.sogou.map.android.maps",
"klean": "X",
"global": ""
},
{
"name": "com.tencent.qqmusicwatch",
"klean": "X",
"global": ""
},
{
"name": "com.tigerbrokers.stock",
"klean": "X",
"global": ""
},
{
"name": "com.umetrip.android.msky.app",
"klean": "X",
"global": ""
},
{
"name": "com.xiaomi.mihome",
"klean": "X",
"global": ""
},
{
"name": "com.xiaomi.wear.anonymous.xiaoai",
"klean": "X",
"global": ""
},
{
"name": "com.xiaomi.wear.calculator",
"klean": "X",
"global": ""
},
{
"name": "com.xiaomi.wear.camera",
"klean": "X",
"global": ""
},
{
"name": "com.xiaomi.wear.card",
"klean": "X",
"global": ""
},
{
"name": "com.xiaomi.wear.charging",
"klean": "X",
"global": ""
},
{
"name": "com.xiaomi.wear.compass",
"klean": "X",
"global": ""
},
{
"name": "com.xiaomi.wear.deskclock",
"klean": "X",
"global": ""
},
{
"name": "com.xiaomi.wear.hotwordle",
"klean": "X",
"global": ""
},
{
"name": "com.xiaomi.wear.market",
"klean": "X",
"global": ""
},
{
"name": "com.xiaomi.wear.mqs",
"klean": "X",
"global": ""
},
{
"name": "com.xiaomi.wear.pressure",
"klean": "X",
"global": ""
},
{
"name": "com.xiaomi.wear.setupprovider",
"klean": "X",
"global": ""
},
{
"name": "com.xiaomi.wear.tutorial",
"klean": "X",
"global": ""
},
{
"name": "com.xiaomi.wear.watchface.album",
"klean": "X",
"global": ""
},
{
"name": "com.xiaomi.wear.watchface.art",
"klean": "X",
"global": ""
},
{
"name": "com.xiaomi.wear.watchface.classic",
"klean": "X",
"global": ""
},
{
"name": "com.xiaomi.wear.watchface.decomposite",
"klean": "X",
"global": ""
},
{
"name": "com.xiaomi.wear.watchface.function",
"klean": "X",
"global": ""
},
{
"name": "com.ximalayaos.wear.common",
"klean": "X",
"global": ""
},
{
"name": "com.xiaomi.wear.xiaoai",
"klean": "",
"global": ""
},
{
"name": "org.codeaurora.ims",
"klean": "X",
"global": ""
}
]

View File

@ -59,5 +59,9 @@
"current-dpi-is": "aktuelle DPI ist ",
"usb-one-device": "Stellen Sie sicher, dass NUR Ihre Uhr angeschlossen ist",
"accept-authorisation": "Bitte wählen Sie \"Immer zulassen\" für die Autorisierung auf der Uhr",
"usb-not-connected": "Stellen Sie sicher, dass Ihre Uhr nicht über USB angeschlossen ist"
"usb-not-connected": "Stellen Sie sicher, dass Ihre Uhr nicht über USB angeschlossen ist",
"main-menu-item-11": "Global Theme",
"enable-global-theme": "Enable Global Theme",
"disable-global-theme": "Disable Global Theme",
"main-menu-item-12": "Xiaomi Apps"
}

View File

@ -59,5 +59,9 @@
"current-dpi-is": "Current DPI is",
"usb-one-device": "Make sure ONLY your watch is connected",
"accept-authorisation": "Please select \"Always Allow\" for authorisation on watch",
"usb-not-connected": "Make sure your watch is not connected via USB"
"usb-not-connected": "Make sure your watch is not connected via USB",
"main-menu-item-11": "Global Theme",
"enable-global-theme": "Enable Global Theme",
"disable-global-theme": "Disable Global Theme",
"main-menu-item-12": "Xiaomi Apps"
}

View File

@ -59,5 +59,9 @@
"current-dpi-is": "Actual DPI es",
"usb-one-device": "Asegúrate de que SOLO tu reloj esté conectado",
"accept-authorisation": "Selecciona \"Permitir siempre\" para la autorización de servicio",
"usb-not-connected": "Asegúrese de que su reloj no esté conectado a través de USB"
"usb-not-connected": "Asegúrese de que su reloj no esté conectado a través de USB",
"main-menu-item-11": "Global Theme",
"enable-global-theme": "Enable Global Theme",
"disable-global-theme": "Disable Global Theme",
"main-menu-item-12": "Xiaomi Apps"
}

View File

@ -59,5 +59,9 @@
"current-dpi-is": "Le DPI actuel est",
"usb-one-device": "Assurez-vous que SEULE votre montre est connectée",
"accept-authorisation": "Veuillez sélectionner \"Toujours autoriser\" pour l'autorisation sur la montre",
"usb-not-connected": "Assurez-vous que votre montre n'est pas connectée via USB"
"usb-not-connected": "Assurez-vous que votre montre n'est pas connectée via USB",
"main-menu-item-11": "Global Theme",
"enable-global-theme": "Enable Global Theme",
"disable-global-theme": "Disable Global Theme",
"main-menu-item-12": "Xiaomi Apps"
}

View File

@ -59,5 +59,9 @@
"current-dpi-is": "το τρέχον DPI είναι",
"usb-one-device": "Βεβαιωθείτε ΜΟΝΟ ότι το ρολόι σας είναι συνδεδεμένο",
"accept-authorisation": "Επιλέξτε \"Να επιτρέπεται πάντα\" για εξουσιοδότηση στο ρολόι",
"usb-not-connected": "Βεβαιωθείτε ότι το ρολόι σας δεν είναι συνδεδεμένο μέσω USB"
"usb-not-connected": "Βεβαιωθείτε ότι το ρολόι σας δεν είναι συνδεδεμένο μέσω USB",
"main-menu-item-11": "Global Theme",
"enable-global-theme": "Enable Global Theme",
"disable-global-theme": "Disable Global Theme",
"main-menu-item-12": "Xiaomi Apps"
}

View File

@ -59,5 +59,9 @@
"current-dpi-is": "DPI הנוכחי הוא",
"usb-one-device": "וודא שהשעון שלך מחובר רק",
"accept-authorisation": "אנא בחר תמיד אפשר לצורך הרשאה בשעון",
"usb-not-connected": "וודא שהשעון שלך אינו מחובר באמצעות USB"
"usb-not-connected": "וודא שהשעון שלך אינו מחובר באמצעות USB",
"main-menu-item-11": "Global Theme",
"enable-global-theme": "Enable Global Theme",
"disable-global-theme": "Disable Global Theme",
"main-menu-item-12": "Xiaomi Apps"
}

View File

@ -59,5 +59,9 @@
"current-dpi-is": "current DPI is",
"usb-one-device": "Assicurati che SOLO il tuo orologio sia connesso",
"accept-authorisation": "Seleziona \"Consenti sempre\" per l'autorizzazione sull'orologio",
"usb-not-connected": "Assicurati che l'orologio non sia connesso tramite USB"
"usb-not-connected": "Assicurati che l'orologio non sia connesso tramite USB",
"main-menu-item-11": "Global Theme",
"enable-global-theme": "Enable Global Theme",
"disable-global-theme": "Disable Global Theme",
"main-menu-item-12": "Xiaomi Apps"
}

View File

@ -59,5 +59,9 @@
"current-dpi-is": "huidige DPI is",
"usb-one-device": "Zorg ervoor dat ALLEEN uw horloge is aangesloten",
"accept-authorisation": "Selecteer \"Altijd toestaan\" voor autorisatie op horloge",
"usb-not-connected": "Zorg ervoor dat uw horloge niet is aangesloten via USB"
"usb-not-connected": "Zorg ervoor dat uw horloge niet is aangesloten via USB",
"main-menu-item-11": "Global Theme",
"enable-global-theme": "Enable Global Theme",
"disable-global-theme": "Disable Global Theme",
"main-menu-item-12": "Xiaomi Apps"
}

View File

@ -59,5 +59,9 @@
"bieżąca-dpi-to": "bieżąca wartość DPI to",
"usb-one-device": "Upewnij się, że TYLKO zegarek jest podłączony",
"accept-authorisation": "Aby uzyskać autoryzację na zegarku, wybierz Zawsze zezwalaj",
"usb-not-connected": "Upewnij się, że zegarek nie jest podłączony przez USB"
"usb-not-connected": "Upewnij się, że zegarek nie jest podłączony przez USB",
"main-menu-item-11": "Global Theme",
"enable-global-theme": "Enable Global Theme",
"disable-global-theme": "Disable Global Theme",
"main-menu-item-12": "Xiaomi Apps"
}

View File

@ -59,5 +59,9 @@
"current-dpi-is": "o DPI atual é",
"usb-one-device": "Certifique-se de que SOMENTE seu relógio esteja conectado",
"accept-authorisation": "Selecione \"Sempre permitir\" para autorização no relógio",
"usb-not-connected": "Certifique-se de que seu relógio não esteja conectado via USB"
"usb-not-connected": "Certifique-se de que seu relógio não esteja conectado via USB",
"main-menu-item-11": "Global Theme",
"enable-global-theme": "Enable Global Theme",
"disable-global-theme": "Disable Global Theme",
"main-menu-item-12": "Xiaomi Apps"
}

View File

@ -59,5 +59,9 @@
"current-dpi-is": "текущий DPI",
"usb-one-device": "Убедитесь, что подключены ТОЛЬКО ваши часы",
"accept-authorisation": "Пожалуйста, выберите \"Всегда разрешать\" для авторизации на часах",
"usb-not-connected": "Убедитесь, что ваши часы не подключены через USB."
"usb-not-connected": "Убедитесь, что ваши часы не подключены через USB.",
"main-menu-item-11": "Global Theme",
"enable-global-theme": "Enable Global Theme",
"disable-global-theme": "Disable Global Theme",
"main-menu-item-12": "Xiaomi Apps"
}

View File

@ -59,5 +59,9 @@
"current-dpi-is": "Geçerli DPI:",
"usb-one-device": "YALNIZCA saatinizin bağlı olduğundan emin olun",
"accept-authorisation": "Saatte yetkilendirme için lütfen \"Her Zaman İzin Ver\" seçeneğini seçin",
"usb-not-connected": "Saatinizin USB ile bağlı olmadığından emin olun"
"usb-not-connected": "Saatinizin USB ile bağlı olmadığından emin olun",
"main-menu-item-11": "Global Theme",
"enable-global-theme": "Enable Global Theme",
"disable-global-theme": "Disable Global Theme",
"main-menu-item-12": "Xiaomi Apps"
}

View File

@ -59,5 +59,9 @@
"current-dpi-is": "DPI hiện tại là",
"usb-one-device": "Đảm bảo CHỈ đồng hồ của bạn được kết nối",
"accept-authorisation": "Vui lòng chọn \"Luôn cho phép\" để ủy quyền trên đồng hồ",
"usb-not-connected": "Đảm bảo rằng đồng hồ của bạn không được kết nối qua USB"
"usb-not-connected": "Đảm bảo rằng đồng hồ của bạn không được kết nối qua USB",
"main-menu-item-11": "Global Theme",
"enable-global-theme": "Enable Global Theme",
"disable-global-theme": "Disable Global Theme",
"main-menu-item-12": "Xiaomi Apps"
}

View File

@ -7,6 +7,8 @@ const common = require('./common')
const chalk = require('chalk');
const globalVariables = require('../lib/globalVars');
const extractNumber = require('extract-numbers')
const settings = require("settings-store");
if (process.platform === 'win32' || process.platform === 'win64') {
adbRun = 'adb'
@ -16,7 +18,7 @@ if (process.platform === 'win32' || process.platform === 'win64') {
module.exports = {
installApk: async (element) => {
Language.setActiveLang(globalVariables.language)
Language.setActiveLang(await settings.value("Lang"))
result = await shellExec(adbRun + ' install -r ' + element).then(async function (result) {
if (result.stderr != '') {
common.dualLog('device-not-authorised' + ' ' + result.stderr, 'red')
@ -46,7 +48,7 @@ module.exports = {
});
},
removeApk: async (package) => {
Language.setActiveLang(globalVariables.language)
Language.setActiveLang(await settings.value("Lang"))
result = await shellExec(adbRun + ' uninstall ' + package)
if (result.stderr != '') {
common.dualLog('device-not-authorised' + ' ' + result.stderr, 'red')
@ -55,7 +57,7 @@ module.exports = {
}
},
removeXiaomiApk: async (package) => {
Language.setActiveLang(globalVariables.language)
Language.setActiveLang(await settings.value("Lang"))
result = await shellExec(adbRun + ' shell pm uninstall -k --user 0 ' + package)
if (result.stderr != '') {
common.dualLog('device-not-authorised' + ' ' + result.stderr, 'red')
@ -64,7 +66,7 @@ module.exports = {
}
},
restoreXiaomiApk: async (package) => {
Language.setActiveLang(globalVariables.language)
Language.setActiveLang(await settings.value("Lang"))
result = await shellExec(adbRun + ' shell cmd package install-existing ' + package)
if (result.stderr != '') {
common.dualLog('device-not-authorised' + ' ' + result.stderr, 'red')
@ -73,7 +75,7 @@ module.exports = {
}
},
restoreAnyApk: async (package) => {
Language.setActiveLang(globalVariables.language)
Language.setActiveLang(await settings.value("Lang"))
result = await shellExec(adbRun + ' shell cmd package install-existing ' + package.removeAnyApp)
if (result.stderr != '') {
common.dualLog('device-not-authorised' + ' ' + result.stderr, 'red')
@ -85,7 +87,7 @@ module.exports = {
}
},
removeAnyApk: async (package) => {
Language.setActiveLang(globalVariables.language)
Language.setActiveLang(await settings.value("Lang"))
result = await shellExec(adbRun + ' shell pm uninstall -k --user 0 ' + package.removeAnyApp)
if (result.stderr != '') {
common.dualLog('device-not-authorised' + ' ' + result.stderr, 'red')
@ -97,7 +99,7 @@ module.exports = {
}
},
getInstalledPacakges: async () => {
Language.setActiveLang(globalVariables.language)
Language.setActiveLang(await settings.value("Lang"))
result = await shellExec(adbRun + ' shell pm list packages -3')
logger.info(await Language.get('packages-recieved-from-watch'))
if (result.stderr.includes('error')) {
@ -125,13 +127,13 @@ module.exports = {
}
},
killAdbServer: async () => {
Language.setActiveLang(globalVariables.language)
Language.setActiveLang(await settings.value("Lang"))
let result = await shellExec(adbRun + ' kill-server')
// common.log('')
// common.dualLog('restarting-adb' + ' ' + result.stderr, 'red')
},
getCurrentDPI: async () => {
Language.setActiveLang(globalVariables.language)
Language.setActiveLang(await settings.value("Lang"))
let result = await shellExec(adbRun + ' shell wm density')
if (result.stdout != "") {
currentDPI = extractNumber(result.stdout)
@ -146,13 +148,13 @@ module.exports = {
},
setDPI: async (setDPI) => {
Language.setActiveLang(globalVariables.language)
Language.setActiveLang(await settings.value("Lang"))
let result = await shellExec(adbRun + ' shell wm density ' + setDPI)
// currentDPI = extractNumber(result.stdout)
// return currentDPI[0]
},
watchConnection: async (value) => {
Language.setActiveLang(globalVariables.language)
Language.setActiveLang(await settings.value("Lang"))
if (value.connection === "usb") {
common.dualLog(await Language.get('usb-one-device', 'whiteBright'))
await common.pause(2000)

View File

@ -8,11 +8,12 @@ var shell = require('shelljs');
const logger = require('perfect-logger');
const Language = require("@shypes/language-translator");
const globalVariables = require('../lib/globalVars');
const settings = require("settings-store");
var chalkRainbow = require('chalk-rainbow')
module.exports = {
header: async (page) => {
Language.setActiveLang(globalVariables.language)
Language.setActiveLang(await settings.value("Lang"))
clear();
console.log(
chalkRainbow(
@ -36,7 +37,7 @@ module.exports = {
await new Promise(resolve => setTimeout(resolve, time));
},
connectionCheck: async () => {
Language.setActiveLang(globalVariables.language)
Language.setActiveLang(await settings.value("Lang"))
if (globalVariables.localUSB === "X") {
console.log(chalk.white('MiWatch: ') + chalk.green(await Language.get('connected-via-usb')))
}
@ -48,7 +49,7 @@ module.exports = {
}
},
downloadFile: async (url, path) => {
Language.setActiveLang(globalVariables.language)
Language.setActiveLang(await settings.value("Lang"))
const res = await fetch(url);
// await module.exports.downloadSize(url)
await new Promise(async (resolve, reject) => {
@ -81,7 +82,7 @@ module.exports = {
logger.info(await Language.get(item, 'en'))
},
print: async (item, colour) => {
Language.setActiveLang(globalVariables.language)
Language.setActiveLang(await settings.value("Lang"))
switch (colour) {
case 'green':
console.log(chalk.green(await Language.get(item)))

View File

@ -4,8 +4,10 @@ const tiny = require("@peterpanhihi/tiny");
const getFilesIn = require('get-files-in')
const globalVariables = require('../lib/globalVars');
const Language = require("@shypes/language-translator");
const settings = require("settings-store");
Language.setActiveLang(globalVariables.language)
Language.setActiveLang(settings.value("Lang"))
module.exports = {

View File

@ -1,7 +1,6 @@
class globalVariables {
localUSB = "";
miWatchIpaddress = "";
language = "";
usersList=[];
}

View File

@ -3,10 +3,11 @@ const files = require("./files");
const common = require("./common");
const Language = require("@shypes/language-translator");
const globalVariables = require('../lib/globalVars');
const settings = require("settings-store");
module.exports = {
mainMenu: async () => {
Language.setActiveLang(globalVariables.language)
Language.setActiveLang(await settings.value("Lang"))
const questions = [{
type: "list",
name: "mainMenu",
@ -14,8 +15,8 @@ module.exports = {
choices: [
'-----------------------',
await Language.get('main-menu-item-1'),
await Language.get('main-menu-item-2'),
await Language.get('main-menu-item-3'),
await Language.get('main-menu-item-12'),
await Language.get('main-menu-item-11'),
await Language.get('main-menu-item-4'),
await Language.get('main-menu-item-5'),
await Language.get('main-menu-item-6'),
@ -45,7 +46,7 @@ module.exports = {
return inquirer.prompt(questions);
},
connectionType: async () => {
Language.setActiveLang(globalVariables.language)
Language.setActiveLang(await settings.value("Lang"))
const questions = [{
type: "list",
name: "connection",
@ -61,7 +62,7 @@ module.exports = {
return inquirer.prompt(questions);
},
connectWifi: async () => {
Language.setActiveLang(globalVariables.language)
Language.setActiveLang(await settings.value("Lang"))
const questions = [{
type: "input",
name: "connectWifi",
@ -70,7 +71,7 @@ module.exports = {
return inquirer.prompt(questions);
},
setDPI: async () => {
Language.setActiveLang(globalVariables.language)
Language.setActiveLang(await settings.value("Lang"))
const questions = [{
type: "input",
name: "setDPI",
@ -78,20 +79,24 @@ module.exports = {
},];
return inquirer.prompt(questions);
},
removeAppsList: async () => {
Language.setActiveLang(globalVariables.language)
xiaomiAppsList: async () => {
Language.setActiveLang(await settings.value("Lang"))
const packages = await files.loadPackageList();
let appList = []
packages.forEach(element => {
appList.push(element.name)
});
const questions = [{
type: "checkbox",
name: "removeAppsList",
name: "appList",
message: await Language.get('restore-app-message'),
choices: packages.apps,
choices: appList,
},];
return inquirer.prompt(questions);
},
compatibleApps: async () => {
Language.setActiveLang(globalVariables.language)
Language.setActiveLang(await settings.value("Lang"))
const compatibleApps = await common.getCompatibleAppsList()
const appList = []
for (let element of compatibleApps) {
@ -106,7 +111,7 @@ module.exports = {
return inquirer.prompt(questions);
},
installedApps: async (installedApps) => {
Language.setActiveLang(globalVariables.language)
Language.setActiveLang(await settings.value("Lang"))
const questions = [{
type: "checkbox",
name: "removeAppsList",
@ -116,7 +121,7 @@ module.exports = {
return inquirer.prompt(questions);
},
restoreAnyApp: async () => {
Language.setActiveLang(globalVariables.language)
Language.setActiveLang(await settings.value("Lang"))
const questions = [{
type: "input",
name: "restoreAnyApp",
@ -125,7 +130,7 @@ module.exports = {
return inquirer.prompt(questions);
},
removeAnyApp: async () => {
Language.setActiveLang(globalVariables.language)
Language.setActiveLang(await settings.value("Lang"))
const questions = [{
type: "input",
name: "removeAnyApp",
@ -133,4 +138,36 @@ module.exports = {
},];
return inquirer.prompt(questions);
},
globalMenu: async () => {
Language.setActiveLang(await settings.value("Lang"))
const questions = [{
type: "list",
name: "globalSelection",
message: await Language.get('main-menu-item-11'),
choices: [
await Language.get('enable-global-theme'),
await Language.get('disable-global-theme')
],
filter: function (val) {
return val.toLowerCase();
},
},];
return inquirer.prompt(questions);
},
xiaomiMenu: async () => {
Language.setActiveLang(await settings.value("Lang"))
const questions = [{
type: "list",
name: "xiaomiSelection",
message: await Language.get('main-menu-item-12'),
choices: [
await Language.get('main-menu-item-2'),
await Language.get('main-menu-item-3')
],
filter: function (val) {
return val.toLowerCase();
},
},];
return inquirer.prompt(questions);
},
};

View File

@ -1,6 +1,6 @@
{
"name": "miwatchkleaner",
"version": "3.2.1",
"version": "3.3.0",
"description": "MiWatch Cleaning Tool",
"main": "app.js",
"bin": "app.js",

View File

@ -6,6 +6,8 @@ const logger = require('perfect-logger');
const Language = require("@shypes/language-translator");
const globalVariables = require('../lib/globalVars');
const adb = require('../lib/adb');
const settings = require("settings-store");
logger.info(process.platform + " detected")
if (process.platform === 'win32' || process.platform === 'win64') {
@ -26,8 +28,10 @@ module.exports = {
common.header('main-menu-item-1')
common.print('remove-xiaomi-apps', 'whiteBright')
const removalPackagesList = files.loadPackageList()
for (let package of removalPackagesList.apps) {
await adb.removeXiaomiApk(package)
for (let package of removalPackagesList) {
if (package.klean === "X" || package.global === "X") {
await adb.removeXiaomiApk(package.name)
}
}
common.print('removal-complete', 'green')
await common.pause(2000)
@ -68,8 +72,8 @@ module.exports = {
removeXiaomiApps: async () => {
common.header('main-menu-item-2')
common.log('main-menu-item-2')
const value = await inquirer.removeAppsList();
for (let package of value.removeAppsList) {
const value = await inquirer.xiaomiAppsList();
for (let package of value.appList) {
await adb.removeXiaomiApk(package)
}
common.dualLog('removal-complete', 'green')
@ -80,8 +84,8 @@ module.exports = {
restoreXiaomiApps: async () => {
common.header('main-menu-item-3')
common.log('main-menu-item-3')
const value = await inquirer.removeAppsList();
for (let package of value.removeAppsList) {
const value = await inquirer.xiaomiAppsList();
for (let package of value.appList) {
await adb.restoreXiaomiApk(package)
}
common.dualLog('restoring-apps-complete', 'green')
@ -213,19 +217,69 @@ module.exports = {
},
selectLanguage: async () => {
if (await settings.value("Lang") != undefined) {
common.log(await settings.value("Lang") + " Selected")
module.exports.connectWatch()
} else {
common.header('Select Language')
common.log('Select Language')
const v = await inquirer.LanguageSelect()
globalVariables.language = v.selection
module.exports.connectWatch()
settings.setValue("Lang", v.selection)
}
},
globalTheme: async () => {
const v = await inquirer.globalMenu()
console.log(v)
if (v.globalSelection === "enable global theme") {
common.log('main-menu-item-11')
common.header('main-menu-item-11')
common.print('enable-global-theme', 'whiteBright')
const removalPackagesList = files.loadPackageList()
for (let package of removalPackagesList) {
if (package.global === "X") {
await adb.removeXiaomiApk(package.name)
}
}
common.print('removal-complete', 'green')
await common.pause(2000)
// common.log('removal-complete')
// common.log('compatible-apps')
module.exports.mainMenu()
} else {
common.log('main-menu-item-11')
common.header('main-menu-item-11')
common.print('disable-global-theme', 'whiteBright')
const removalPackagesList = files.loadPackageList()
for (let package of removalPackagesList) {
if (package.global === "X") {
await adb.restoreXiaomiApk(package.name)
}
}
// common.print('removal-complete', 'green')
await common.pause(2000)
// common.log('removal-complete')
// common.log('compatible-apps')
module.exports.mainMenu()
}
},
xiaomiApps: async () => {
const v = await inquirer.xiaomiMenu()
console.log(v)
n = await Language.get('main-menu-item-2')
if (v.xiaomiSelection === n.toLowerCase()) {
module.exports.removeXiaomiApps()
} else {
module.exports.restoreXiaomiApps()
}
},
mainMenu: async () => {
common.header('Main Menu')
const mainMenuSelection = await inquirer.mainMenu();
menu_1 = await Language.get('main-menu-item-1')
menu_2 = await Language.get('main-menu-item-2')
menu_3 = await Language.get('main-menu-item-3')
menu_12 = await Language.get('main-menu-item-12')
menu_4 = await Language.get('main-menu-item-4')
menu_5 = await Language.get('main-menu-item-5')
menu_6 = await Language.get('main-menu-item-6')
@ -233,17 +287,18 @@ module.exports = {
menu_8 = await Language.get('main-menu-item-8')
menu_9 = await Language.get('main-menu-item-9')
menu_10 = await Language.get('main-menu-item-10')
menu_11 = await Language.get('main-menu-item-11')
switch (mainMenuSelection.mainMenu) {
case menu_1.toLowerCase():
module.exports.oneClick()
break;
case menu_2.toLowerCase():
module.exports.removeXiaomiApps()
break;
case menu_3.toLowerCase():
module.exports.restoreXiaomiApps()
case menu_12.toLowerCase():
module.exports.xiaomiApps()
break;
// case menu_3.toLowerCase():
// module.exports.restoreXiaomiApps()
// break;
case menu_4.toLowerCase():
module.exports.installCompatibleApps()
break;
@ -266,6 +321,10 @@ module.exports = {
module.exports.changeWatchDPI()
break;
case menu_9.toLowerCase():
process.kill(process.pid)
break;
case menu_11.toLowerCase():
module.exports.globalTheme();
break;
default:
// code block