inquirer.js 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. const inquirer = require("inquirer");
  2. const files = require("./files");
  3. const common = require("./common");
  4. const Language = require("@shypes/language-translator");
  5. const globalVariables = require('../lib/globalVars');
  6. module.exports = {
  7. mainMenu: async () => {
  8. Language.setActiveLang(globalVariables.language)
  9. const questions = [{
  10. type: "list",
  11. name: "mainMenu",
  12. message: await Language.get('main-menu-question'),
  13. choices: [
  14. await Language.get('main-menu-item-1'),
  15. await Language.get('main-menu-item-2'),
  16. await Language.get('main-menu-item-3'),
  17. await Language.get('main-menu-item-4'),
  18. await Language.get('main-menu-item-5'),
  19. await Language.get('main-menu-item-6'),
  20. await Language.get('main-menu-item-7'),
  21. await Language.get('main-menu-item-8'),
  22. ],
  23. filter: function (val) {
  24. return val.toLowerCase();
  25. },
  26. },];
  27. return inquirer.prompt(questions);
  28. },
  29. LanguageSelect: async () => {
  30. langList = files.getLanguageFiles()
  31. langList = langList.map(s => s.slice(5, -5));
  32. const questions = [{
  33. type: "list",
  34. name: "selection",
  35. message: await Language.get('Select Language'),
  36. choices: langList,
  37. filter: function (val) {
  38. return val.toLowerCase();
  39. },
  40. },];
  41. return inquirer.prompt(questions);
  42. },
  43. connectionType: async () => {
  44. Language.setActiveLang(globalVariables.language)
  45. const questions = [{
  46. type: "list",
  47. name: "connection",
  48. message: await Language.get('connection-type-message'),
  49. choices: [
  50. "USB",
  51. "Wifi"
  52. ],
  53. filter: function (val) {
  54. return val.toLowerCase();
  55. },
  56. },];
  57. return inquirer.prompt(questions);
  58. },
  59. connectWifi: async () => {
  60. Language.setActiveLang(globalVariables.language)
  61. const questions = [{
  62. type: "input",
  63. name: "connectWifi",
  64. message: await Language.get('connect-wifi-message'),
  65. },];
  66. return inquirer.prompt(questions);
  67. },
  68. removeAppsList: async () => {
  69. Language.setActiveLang(globalVariables.language)
  70. const packages = await files.loadPackageList();
  71. const questions = [{
  72. type: "checkbox",
  73. name: "removeAppsList",
  74. message: await Language.get('restore-app-message'),
  75. choices: packages.apps,
  76. },];
  77. return inquirer.prompt(questions);
  78. },
  79. compatibleApps: async () => {
  80. Language.setActiveLang(globalVariables.language)
  81. const compatibleApps = await common.getCompatibleAppsList()
  82. const appList = []
  83. for (let element of compatibleApps) {
  84. appList.push(element.name)
  85. }
  86. const questions = [{
  87. type: "checkbox",
  88. name: "removeAppsList",
  89. message: await Language.get('install-compatible-apps-message'),
  90. choices: appList,
  91. },];
  92. return inquirer.prompt(questions);
  93. },
  94. installedApps: async (installedApps) => {
  95. Language.setActiveLang(globalVariables.language)
  96. const questions = [{
  97. type: "checkbox",
  98. name: "removeAppsList",
  99. message: await Language.get('remove-installed-apps-message'),
  100. choices: installedApps,
  101. },];
  102. return inquirer.prompt(questions);
  103. },
  104. restoreAnyApp: async () => {
  105. Language.setActiveLang(globalVariables.language)
  106. const questions = [{
  107. type: "input",
  108. name: "restoreAnyApp",
  109. message: await Language.get('restore-any-app-message'),
  110. },];
  111. return inquirer.prompt(questions);
  112. },
  113. };