MiWatchKleaner/lib/inquirer.js

101 lines
2.7 KiB
JavaScript
Raw Normal View History

2020-04-25 11:11:10 +01:00
const inquirer = require("inquirer");
const files = require("./files");
2020-08-27 10:28:54 +01:00
const common = require("./common");
2020-04-26 10:10:29 +01:00
2020-08-28 13:03:24 +01:00
const Language = require("@shypes/language-translator");
Language._({
default_lang: "en",
ext: ".json",
__basedir: "./",
langFolder: 'lang'
})
2020-04-24 20:42:45 +01:00
module.exports = {
2020-08-28 13:03:24 +01:00
mainMenu: async () => {
2020-04-26 10:10:29 +01:00
const questions = [{
type: "list",
name: "mainMenu",
2020-08-28 13:03:24 +01:00
message: await Language.get('main_menu_question'),
2020-04-26 10:10:29 +01:00
choices: [
2020-08-28 13:03:24 +01:00
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_4'),
await Language.get('main_menu_item_5'),
await Language.get('main_menu_item_6'),
await Language.get('main_menu_item_7'),
await Language.get('main_menu_item_8'),
2020-04-26 10:10:29 +01:00
],
filter: function (val) {
return val.toLowerCase();
2020-04-25 11:11:10 +01:00
},
2020-08-28 13:03:24 +01:00
},];
2020-04-25 11:11:10 +01:00
return inquirer.prompt(questions);
},
2020-08-28 13:03:24 +01:00
connectionType: async () => {
2020-08-27 16:45:49 +01:00
const questions = [{
type: "list",
name: "connection",
2020-08-28 13:03:24 +01:00
message: await Language.get('connection_type_message'),
2020-08-27 16:45:49 +01:00
choices: [
"USB",
"Wifi"
],
filter: function (val) {
return val.toLowerCase();
},
2020-08-28 13:03:24 +01:00
},];
2020-08-27 16:45:49 +01:00
return inquirer.prompt(questions);
},
2020-08-28 13:03:24 +01:00
connectWifi: async () => {
2020-04-26 10:10:29 +01:00
const questions = [{
type: "input",
name: "connectWifi",
2020-08-28 13:03:24 +01:00
message: await Language.get('connect_wifi_message'),
},];
2020-04-25 11:11:10 +01:00
return inquirer.prompt(questions);
},
removeAppsList: async () => {
const packages = await files.loadPackageList();
2020-04-25 10:44:12 +01:00
2020-04-26 10:10:29 +01:00
const questions = [{
type: "checkbox",
name: "removeAppsList",
2020-08-28 13:03:24 +01:00
message: await Language.get('restore_app_message'),
2020-04-26 10:10:29 +01:00
choices: packages.apps,
2020-08-28 13:03:24 +01:00
},];
2020-04-25 11:11:10 +01:00
return inquirer.prompt(questions);
},
2020-04-25 15:35:15 +01:00
compatibleApps: async () => {
2020-08-27 10:28:54 +01:00
const compatibleApps = await common.getCompatibleAppsList()
2020-04-25 15:35:15 +01:00
const appList = []
for (let element of compatibleApps) {
2020-04-26 10:10:29 +01:00
appList.push(element.name)
}
const questions = [{
type: "checkbox",
name: "removeAppsList",
2020-08-28 13:03:24 +01:00
message: await Language.get('install_compatible_apps_message'),
2020-04-26 10:10:29 +01:00
choices: appList,
2020-08-28 13:03:24 +01:00
},];
2020-04-25 15:35:15 +01:00
return inquirer.prompt(questions);
},
installedApps: async (installedApps) => {
const questions = [{
type: "checkbox",
name: "removeAppsList",
2020-08-28 13:03:24 +01:00
message: await Language.get('remove_installed_apps_message'),
choices: installedApps,
2020-08-28 13:03:24 +01:00
},];
return inquirer.prompt(questions);
},
2020-08-27 10:28:54 +01:00
restoreAnyApp: async () => {
const questions = [{
type: "input",
name: "restoreAnyApp",
2020-08-28 13:03:24 +01:00
message: await Language.get('restore_any_app_message'),
},];
2020-08-27 10:28:54 +01:00
return inquirer.prompt(questions);
},
2020-04-26 10:10:29 +01:00
};