xray-manager 1.8.5 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (324) hide show
  1. package/README.md +102 -42
  2. package/dist/cli.mjs +8587 -0
  3. package/dist/cli.mjs.map +7 -0
  4. package/package.json +13 -5
  5. package/dist/cli.d.ts +0 -11
  6. package/dist/cli.d.ts.map +0 -1
  7. package/dist/cli.js +0 -134
  8. package/dist/cli.js.map +0 -1
  9. package/dist/commands/clash.d.ts +0 -20
  10. package/dist/commands/clash.d.ts.map +0 -1
  11. package/dist/commands/clash.js +0 -156
  12. package/dist/commands/clash.js.map +0 -1
  13. package/dist/commands/config.d.ts +0 -56
  14. package/dist/commands/config.d.ts.map +0 -1
  15. package/dist/commands/config.js +0 -461
  16. package/dist/commands/config.js.map +0 -1
  17. package/dist/commands/interactive.d.ts +0 -55
  18. package/dist/commands/interactive.d.ts.map +0 -1
  19. package/dist/commands/interactive.js +0 -418
  20. package/dist/commands/interactive.js.map +0 -1
  21. package/dist/commands/logs.d.ts +0 -62
  22. package/dist/commands/logs.d.ts.map +0 -1
  23. package/dist/commands/logs.js +0 -389
  24. package/dist/commands/logs.js.map +0 -1
  25. package/dist/commands/quota.d.ts +0 -54
  26. package/dist/commands/quota.d.ts.map +0 -1
  27. package/dist/commands/quota.js +0 -661
  28. package/dist/commands/quota.js.map +0 -1
  29. package/dist/commands/review.d.ts +0 -8
  30. package/dist/commands/review.d.ts.map +0 -1
  31. package/dist/commands/review.js +0 -79
  32. package/dist/commands/review.js.map +0 -1
  33. package/dist/commands/service.d.ts +0 -43
  34. package/dist/commands/service.d.ts.map +0 -1
  35. package/dist/commands/service.js +0 -202
  36. package/dist/commands/service.js.map +0 -1
  37. package/dist/commands/user.d.ts +0 -49
  38. package/dist/commands/user.d.ts.map +0 -1
  39. package/dist/commands/user.js +0 -371
  40. package/dist/commands/user.js.map +0 -1
  41. package/dist/components/dashboard-widget.d.ts +0 -21
  42. package/dist/components/dashboard-widget.d.ts.map +0 -1
  43. package/dist/components/dashboard-widget.js +0 -234
  44. package/dist/components/dashboard-widget.js.map +0 -1
  45. package/dist/components/progress-bar.d.ts +0 -67
  46. package/dist/components/progress-bar.d.ts.map +0 -1
  47. package/dist/components/progress-bar.js +0 -138
  48. package/dist/components/progress-bar.js.map +0 -1
  49. package/dist/components/user-table.d.ts +0 -8
  50. package/dist/components/user-table.d.ts.map +0 -1
  51. package/dist/components/user-table.js +0 -91
  52. package/dist/components/user-table.js.map +0 -1
  53. package/dist/config/i18n.d.ts +0 -136
  54. package/dist/config/i18n.d.ts.map +0 -1
  55. package/dist/config/i18n.js +0 -323
  56. package/dist/config/i18n.js.map +0 -1
  57. package/dist/constants/error-codes.d.ts +0 -344
  58. package/dist/constants/error-codes.d.ts.map +0 -1
  59. package/dist/constants/error-codes.js +0 -462
  60. package/dist/constants/error-codes.js.map +0 -1
  61. package/dist/constants/exit-codes.d.ts +0 -49
  62. package/dist/constants/exit-codes.d.ts.map +0 -1
  63. package/dist/constants/exit-codes.js +0 -100
  64. package/dist/constants/exit-codes.js.map +0 -1
  65. package/dist/constants/paths.d.ts +0 -63
  66. package/dist/constants/paths.d.ts.map +0 -1
  67. package/dist/constants/paths.js +0 -78
  68. package/dist/constants/paths.js.map +0 -1
  69. package/dist/constants/quota.d.ts +0 -126
  70. package/dist/constants/quota.d.ts.map +0 -1
  71. package/dist/constants/quota.js +0 -135
  72. package/dist/constants/quota.js.map +0 -1
  73. package/dist/constants/review.d.ts +0 -14
  74. package/dist/constants/review.d.ts.map +0 -1
  75. package/dist/constants/review.js +0 -33
  76. package/dist/constants/review.js.map +0 -1
  77. package/dist/constants/supported-distros.d.ts +0 -17
  78. package/dist/constants/supported-distros.d.ts.map +0 -1
  79. package/dist/constants/supported-distros.js +0 -68
  80. package/dist/constants/supported-distros.js.map +0 -1
  81. package/dist/constants/theme.d.ts +0 -34
  82. package/dist/constants/theme.d.ts.map +0 -1
  83. package/dist/constants/theme.js +0 -52
  84. package/dist/constants/theme.js.map +0 -1
  85. package/dist/constants/timeouts.d.ts +0 -84
  86. package/dist/constants/timeouts.d.ts.map +0 -1
  87. package/dist/constants/timeouts.js +0 -111
  88. package/dist/constants/timeouts.js.map +0 -1
  89. package/dist/constants/ui-symbols.d.ts +0 -47
  90. package/dist/constants/ui-symbols.d.ts.map +0 -1
  91. package/dist/constants/ui-symbols.js +0 -48
  92. package/dist/constants/ui-symbols.js.map +0 -1
  93. package/dist/services/clash-config.d.ts +0 -16
  94. package/dist/services/clash-config.d.ts.map +0 -1
  95. package/dist/services/clash-config.js +0 -107
  96. package/dist/services/clash-config.js.map +0 -1
  97. package/dist/services/config-manager.d.ts +0 -90
  98. package/dist/services/config-manager.d.ts.map +0 -1
  99. package/dist/services/config-manager.js +0 -307
  100. package/dist/services/config-manager.js.map +0 -1
  101. package/dist/services/layout-manager.d.ts +0 -94
  102. package/dist/services/layout-manager.d.ts.map +0 -1
  103. package/dist/services/layout-manager.js +0 -192
  104. package/dist/services/layout-manager.js.map +0 -1
  105. package/dist/services/log-manager.d.ts +0 -157
  106. package/dist/services/log-manager.d.ts.map +0 -1
  107. package/dist/services/log-manager.js +0 -397
  108. package/dist/services/log-manager.js.map +0 -1
  109. package/dist/services/navigation-manager.d.ts +0 -23
  110. package/dist/services/navigation-manager.d.ts.map +0 -1
  111. package/dist/services/navigation-manager.js +0 -39
  112. package/dist/services/navigation-manager.js.map +0 -1
  113. package/dist/services/platform-detector.d.ts +0 -10
  114. package/dist/services/platform-detector.d.ts.map +0 -1
  115. package/dist/services/platform-detector.js +0 -106
  116. package/dist/services/platform-detector.js.map +0 -1
  117. package/dist/services/public-ip-manager.d.ts +0 -78
  118. package/dist/services/public-ip-manager.d.ts.map +0 -1
  119. package/dist/services/public-ip-manager.js +0 -296
  120. package/dist/services/public-ip-manager.js.map +0 -1
  121. package/dist/services/quota-enforcer.d.ts +0 -86
  122. package/dist/services/quota-enforcer.d.ts.map +0 -1
  123. package/dist/services/quota-enforcer.js +0 -151
  124. package/dist/services/quota-enforcer.js.map +0 -1
  125. package/dist/services/quota-manager.d.ts +0 -101
  126. package/dist/services/quota-manager.d.ts.map +0 -1
  127. package/dist/services/quota-manager.js +0 -257
  128. package/dist/services/quota-manager.js.map +0 -1
  129. package/dist/services/review/areas/community.d.ts +0 -9
  130. package/dist/services/review/areas/community.d.ts.map +0 -1
  131. package/dist/services/review/areas/community.js +0 -59
  132. package/dist/services/review/areas/community.js.map +0 -1
  133. package/dist/services/review/areas/contribution.d.ts +0 -9
  134. package/dist/services/review/areas/contribution.d.ts.map +0 -1
  135. package/dist/services/review/areas/contribution.js +0 -107
  136. package/dist/services/review/areas/contribution.js.map +0 -1
  137. package/dist/services/review/areas/documentation.d.ts +0 -9
  138. package/dist/services/review/areas/documentation.d.ts.map +0 -1
  139. package/dist/services/review/areas/documentation.js +0 -110
  140. package/dist/services/review/areas/documentation.js.map +0 -1
  141. package/dist/services/review/areas/license.d.ts +0 -9
  142. package/dist/services/review/areas/license.d.ts.map +0 -1
  143. package/dist/services/review/areas/license.js +0 -86
  144. package/dist/services/review/areas/license.js.map +0 -1
  145. package/dist/services/review/areas/quality.d.ts +0 -9
  146. package/dist/services/review/areas/quality.d.ts.map +0 -1
  147. package/dist/services/review/areas/quality.js +0 -84
  148. package/dist/services/review/areas/quality.js.map +0 -1
  149. package/dist/services/review/areas/security.d.ts +0 -9
  150. package/dist/services/review/areas/security.d.ts.map +0 -1
  151. package/dist/services/review/areas/security.js +0 -64
  152. package/dist/services/review/areas/security.js.map +0 -1
  153. package/dist/services/review/evidence.d.ts +0 -10
  154. package/dist/services/review/evidence.d.ts.map +0 -1
  155. package/dist/services/review/evidence.js +0 -40
  156. package/dist/services/review/evidence.js.map +0 -1
  157. package/dist/services/review/recommendations-filter.d.ts +0 -12
  158. package/dist/services/review/recommendations-filter.d.ts.map +0 -1
  159. package/dist/services/review/recommendations-filter.js +0 -20
  160. package/dist/services/review/recommendations-filter.js.map +0 -1
  161. package/dist/services/review/repo-scanner.d.ts +0 -8
  162. package/dist/services/review/repo-scanner.d.ts.map +0 -1
  163. package/dist/services/review/repo-scanner.js +0 -15
  164. package/dist/services/review/repo-scanner.js.map +0 -1
  165. package/dist/services/review/report-renderer.d.ts +0 -15
  166. package/dist/services/review/report-renderer.d.ts.map +0 -1
  167. package/dist/services/review/report-renderer.js +0 -120
  168. package/dist/services/review/report-renderer.js.map +0 -1
  169. package/dist/services/review/review-engine.d.ts +0 -15
  170. package/dist/services/review/review-engine.d.ts.map +0 -1
  171. package/dist/services/review/review-engine.js +0 -61
  172. package/dist/services/review/review-engine.js.map +0 -1
  173. package/dist/services/review/summary-builder.d.ts +0 -8
  174. package/dist/services/review/summary-builder.d.ts.map +0 -1
  175. package/dist/services/review/summary-builder.js +0 -26
  176. package/dist/services/review/summary-builder.js.map +0 -1
  177. package/dist/services/screen-manager.d.ts +0 -13
  178. package/dist/services/screen-manager.d.ts.map +0 -1
  179. package/dist/services/screen-manager.js +0 -42
  180. package/dist/services/screen-manager.js.map +0 -1
  181. package/dist/services/stats-config-manager.d.ts +0 -110
  182. package/dist/services/stats-config-manager.d.ts.map +0 -1
  183. package/dist/services/stats-config-manager.js +0 -443
  184. package/dist/services/stats-config-manager.js.map +0 -1
  185. package/dist/services/systemd-manager.d.ts +0 -197
  186. package/dist/services/systemd-manager.d.ts.map +0 -1
  187. package/dist/services/systemd-manager.js +0 -458
  188. package/dist/services/systemd-manager.js.map +0 -1
  189. package/dist/services/traffic-manager.d.ts +0 -106
  190. package/dist/services/traffic-manager.d.ts.map +0 -1
  191. package/dist/services/traffic-manager.js +0 -368
  192. package/dist/services/traffic-manager.js.map +0 -1
  193. package/dist/services/user-manager.d.ts +0 -90
  194. package/dist/services/user-manager.d.ts.map +0 -1
  195. package/dist/services/user-manager.js +0 -347
  196. package/dist/services/user-manager.js.map +0 -1
  197. package/dist/services/user-metadata-manager.d.ts +0 -85
  198. package/dist/services/user-metadata-manager.d.ts.map +0 -1
  199. package/dist/services/user-metadata-manager.js +0 -181
  200. package/dist/services/user-metadata-manager.js.map +0 -1
  201. package/dist/types/config.d.ts +0 -340
  202. package/dist/types/config.d.ts.map +0 -1
  203. package/dist/types/config.js +0 -7
  204. package/dist/types/config.js.map +0 -1
  205. package/dist/types/layout.d.ts +0 -119
  206. package/dist/types/layout.d.ts.map +0 -1
  207. package/dist/types/layout.js +0 -142
  208. package/dist/types/layout.js.map +0 -1
  209. package/dist/types/platform.d.ts +0 -72
  210. package/dist/types/platform.d.ts.map +0 -1
  211. package/dist/types/platform.js +0 -38
  212. package/dist/types/platform.js.map +0 -1
  213. package/dist/types/quota.d.ts +0 -158
  214. package/dist/types/quota.d.ts.map +0 -1
  215. package/dist/types/quota.js +0 -26
  216. package/dist/types/quota.js.map +0 -1
  217. package/dist/types/review.d.ts +0 -62
  218. package/dist/types/review.d.ts.map +0 -1
  219. package/dist/types/review.js +0 -8
  220. package/dist/types/review.js.map +0 -1
  221. package/dist/types/server-config.d.ts +0 -53
  222. package/dist/types/server-config.d.ts.map +0 -1
  223. package/dist/types/server-config.js +0 -19
  224. package/dist/types/server-config.js.map +0 -1
  225. package/dist/types/service.d.ts +0 -96
  226. package/dist/types/service.d.ts.map +0 -1
  227. package/dist/types/service.js +0 -7
  228. package/dist/types/service.js.map +0 -1
  229. package/dist/types/terminal.d.ts +0 -35
  230. package/dist/types/terminal.d.ts.map +0 -1
  231. package/dist/types/terminal.js +0 -20
  232. package/dist/types/terminal.js.map +0 -1
  233. package/dist/types/ui-components.d.ts +0 -53
  234. package/dist/types/ui-components.d.ts.map +0 -1
  235. package/dist/types/ui-components.js +0 -3
  236. package/dist/types/ui-components.js.map +0 -1
  237. package/dist/types/user-metadata.d.ts +0 -43
  238. package/dist/types/user-metadata.d.ts.map +0 -1
  239. package/dist/types/user-metadata.js +0 -17
  240. package/dist/types/user-metadata.js.map +0 -1
  241. package/dist/types/user.d.ts +0 -134
  242. package/dist/types/user.d.ts.map +0 -1
  243. package/dist/types/user.js +0 -7
  244. package/dist/types/user.js.map +0 -1
  245. package/dist/utils/clipboard.d.ts +0 -21
  246. package/dist/utils/clipboard.d.ts.map +0 -1
  247. package/dist/utils/clipboard.js +0 -45
  248. package/dist/utils/clipboard.js.map +0 -1
  249. package/dist/utils/error-formatter.d.ts +0 -60
  250. package/dist/utils/error-formatter.d.ts.map +0 -1
  251. package/dist/utils/error-formatter.js +0 -244
  252. package/dist/utils/error-formatter.js.map +0 -1
  253. package/dist/utils/errors.d.ts +0 -92
  254. package/dist/utils/errors.d.ts.map +0 -1
  255. package/dist/utils/errors.js +0 -143
  256. package/dist/utils/errors.js.map +0 -1
  257. package/dist/utils/firewall.d.ts +0 -14
  258. package/dist/utils/firewall.d.ts.map +0 -1
  259. package/dist/utils/firewall.js +0 -78
  260. package/dist/utils/firewall.js.map +0 -1
  261. package/dist/utils/format.d.ts +0 -93
  262. package/dist/utils/format.d.ts.map +0 -1
  263. package/dist/utils/format.js +0 -240
  264. package/dist/utils/format.js.map +0 -1
  265. package/dist/utils/icons.d.ts +0 -53
  266. package/dist/utils/icons.d.ts.map +0 -1
  267. package/dist/utils/icons.js +0 -143
  268. package/dist/utils/icons.js.map +0 -1
  269. package/dist/utils/layout.d.ts +0 -142
  270. package/dist/utils/layout.d.ts.map +0 -1
  271. package/dist/utils/layout.js +0 -381
  272. package/dist/utils/layout.js.map +0 -1
  273. package/dist/utils/logger.d.ts +0 -160
  274. package/dist/utils/logger.d.ts.map +0 -1
  275. package/dist/utils/logger.js +0 -351
  276. package/dist/utils/logger.js.map +0 -1
  277. package/dist/utils/network.d.ts +0 -39
  278. package/dist/utils/network.d.ts.map +0 -1
  279. package/dist/utils/network.js +0 -227
  280. package/dist/utils/network.js.map +0 -1
  281. package/dist/utils/os-detection.d.ts +0 -10
  282. package/dist/utils/os-detection.d.ts.map +0 -1
  283. package/dist/utils/os-detection.js +0 -86
  284. package/dist/utils/os-detection.js.map +0 -1
  285. package/dist/utils/preflight.d.ts +0 -57
  286. package/dist/utils/preflight.d.ts.map +0 -1
  287. package/dist/utils/preflight.js +0 -215
  288. package/dist/utils/preflight.js.map +0 -1
  289. package/dist/utils/repo-scan.d.ts +0 -54
  290. package/dist/utils/repo-scan.d.ts.map +0 -1
  291. package/dist/utils/repo-scan.js +0 -165
  292. package/dist/utils/repo-scan.js.map +0 -1
  293. package/dist/utils/report-output.d.ts +0 -13
  294. package/dist/utils/report-output.d.ts.map +0 -1
  295. package/dist/utils/report-output.js +0 -33
  296. package/dist/utils/report-output.js.map +0 -1
  297. package/dist/utils/review-id.d.ts +0 -8
  298. package/dist/utils/review-id.d.ts.map +0 -1
  299. package/dist/utils/review-id.js +0 -17
  300. package/dist/utils/review-id.js.map +0 -1
  301. package/dist/utils/splash.d.ts +0 -21
  302. package/dist/utils/splash.d.ts.map +0 -1
  303. package/dist/utils/splash.js +0 -179
  304. package/dist/utils/splash.js.map +0 -1
  305. package/dist/utils/terminal.d.ts +0 -32
  306. package/dist/utils/terminal.d.ts.map +0 -1
  307. package/dist/utils/terminal.js +0 -93
  308. package/dist/utils/terminal.js.map +0 -1
  309. package/dist/utils/traffic-formatter.d.ts +0 -45
  310. package/dist/utils/traffic-formatter.d.ts.map +0 -1
  311. package/dist/utils/traffic-formatter.js +0 -131
  312. package/dist/utils/traffic-formatter.js.map +0 -1
  313. package/dist/utils/validator.d.ts +0 -102
  314. package/dist/utils/validator.d.ts.map +0 -1
  315. package/dist/utils/validator.js +0 -238
  316. package/dist/utils/validator.js.map +0 -1
  317. package/dist/utils/vless-link.d.ts +0 -27
  318. package/dist/utils/vless-link.d.ts.map +0 -1
  319. package/dist/utils/vless-link.js +0 -69
  320. package/dist/utils/vless-link.js.map +0 -1
  321. package/dist/utils/which.d.ts +0 -13
  322. package/dist/utils/which.d.ts.map +0 -1
  323. package/dist/utils/which.js +0 -28
  324. package/dist/utils/which.js.map +0 -1
@@ -1,418 +0,0 @@
1
- "use strict";
2
- /**
3
- * Interactive Menu Implementation
4
- *
5
- * Provides the main interactive menu system for the CLI tool
6
- *
7
- * @module commands/interactive
8
- */
9
- var __importDefault = (this && this.__importDefault) || function (mod) {
10
- return (mod && mod.__esModule) ? mod : { "default": mod };
11
- };
12
- Object.defineProperty(exports, "__esModule", { value: true });
13
- exports.getMainMenuOptions = getMainMenuOptions;
14
- exports.showMenu = showMenu;
15
- exports.handleMenuSelection = handleMenuSelection;
16
- exports.handleSigInt = handleSigInt;
17
- exports.startInteractiveMenu = startInteractiveMenu;
18
- const prompts_1 = require("@inquirer/prompts");
19
- const chalk_1 = __importDefault(require("chalk"));
20
- const logger_1 = __importDefault(require("../utils/logger"));
21
- const exit_codes_1 = require("../constants/exit-codes");
22
- const service_1 = require("./service");
23
- const user_1 = require("./user");
24
- const quota_1 = require("./quota");
25
- const logs_1 = require("./logs");
26
- const config_1 = require("./config");
27
- const ui_symbols_1 = require("../constants/ui-symbols");
28
- const i18n_1 = require("../config/i18n");
29
- const layout_manager_1 = __importDefault(require("../services/layout-manager"));
30
- const screen_manager_1 = require("../services/screen-manager");
31
- const dashboard_widget_1 = require("../components/dashboard-widget");
32
- const navigation_manager_1 = require("../services/navigation-manager");
33
- const theme_1 = require("../constants/theme");
34
- // Global instances
35
- const screenManager = new screen_manager_1.ScreenManager();
36
- const navigationManager = new navigation_manager_1.NavigationManager();
37
- let dashboardWidget;
38
- /**
39
- * Get main menu options
40
- */
41
- function getMainMenuOptions() {
42
- const trans = (0, i18n_1.t)();
43
- // Unified color theme: Icons use accents, text uses neutral/primary
44
- return [
45
- // Service Operations Group
46
- {
47
- name: `${theme_1.THEME.primary(ui_symbols_1.menuIcons.STATUS)} ${theme_1.THEME.neutral(trans.menu.viewStatus)}`,
48
- value: 'service-status',
49
- },
50
- {
51
- name: `${theme_1.THEME.success(ui_symbols_1.menuIcons.START)} ${theme_1.THEME.neutral(trans.menu.startService)}`,
52
- value: 'service-start',
53
- },
54
- {
55
- name: `${theme_1.THEME.error(ui_symbols_1.menuIcons.STOP)} ${theme_1.THEME.neutral(trans.menu.stopService)}`,
56
- value: 'service-stop',
57
- },
58
- {
59
- name: `${theme_1.THEME.warning(ui_symbols_1.menuIcons.RESTART)} ${theme_1.THEME.neutral(trans.menu.restartService)}`,
60
- value: 'service-restart',
61
- },
62
- new prompts_1.Separator(),
63
- // Management Group
64
- {
65
- name: `${theme_1.THEME.secondary(ui_symbols_1.menuIcons.USER)} ${theme_1.THEME.neutral(trans.menu.userManagement)}`,
66
- value: 'user',
67
- },
68
- {
69
- name: `${theme_1.THEME.secondary(ui_symbols_1.menuIcons.QUOTA)} ${theme_1.THEME.neutral('流量配额管理')}`,
70
- value: 'quota',
71
- },
72
- {
73
- name: `${theme_1.THEME.secondary(ui_symbols_1.menuIcons.CONFIG)} ${theme_1.THEME.neutral(trans.menu.configManagement)}`,
74
- value: 'config',
75
- },
76
- {
77
- name: `${theme_1.THEME.neutral(ui_symbols_1.menuIcons.LOGS)} ${theme_1.THEME.neutral(trans.menu.viewLogs)}`,
78
- value: 'logs',
79
- },
80
- new prompts_1.Separator(),
81
- // Language & Exit Group
82
- {
83
- name: `${theme_1.THEME.primary(ui_symbols_1.menuIcons.LANGUAGE)} ${theme_1.THEME.neutral(trans.menu.switchLanguage)}`,
84
- value: 'switch-language',
85
- },
86
- {
87
- name: `${theme_1.THEME.error(ui_symbols_1.menuIcons.EXIT)} ${theme_1.THEME.neutral(trans.menu.exit)}`,
88
- value: 'exit',
89
- },
90
- ];
91
- }
92
- /**
93
- * Show a menu and get user selection
94
- */
95
- async function showMenu(options, message) {
96
- const trans = (0, i18n_1.t)();
97
- const answer = await (0, prompts_1.select)({
98
- message: message || trans.actions.selectAction,
99
- choices: options,
100
- });
101
- return answer;
102
- }
103
- /**
104
- * Handle menu selection
105
- */
106
- async function handleMenuSelection(selection, options) {
107
- switch (selection) {
108
- case 'switch-language':
109
- (0, i18n_1.toggleLanguage)();
110
- const trans = (0, i18n_1.t)();
111
- logger_1.default.success(trans.messages.languageSwitched);
112
- await promptContinue();
113
- return false; // Return to menu with new language
114
- case 'exit':
115
- return true; // Signal to exit
116
- case 'service-status':
117
- await (0, service_1.displayServiceStatus)(options);
118
- await promptContinue();
119
- return false;
120
- case 'service-start':
121
- await (0, service_1.startService)(options);
122
- await dashboardWidget.refresh(); // Refresh dashboard after action
123
- await promptContinue();
124
- return false;
125
- case 'service-stop':
126
- const confirmStop = await (0, prompts_1.confirm)({
127
- message: theme_1.THEME.warning('确定要停止服务吗?这将中断所有连接。'),
128
- default: false,
129
- });
130
- if (confirmStop) {
131
- await (0, service_1.stopService)(options);
132
- await dashboardWidget.refresh(); // Refresh dashboard after action
133
- }
134
- else {
135
- logger_1.default.info('已取消停止操作');
136
- await promptContinue();
137
- }
138
- return false;
139
- case 'service-restart':
140
- const confirmRestart = await (0, prompts_1.confirm)({
141
- message: theme_1.THEME.warning('确定要重启服务吗?'),
142
- default: true,
143
- });
144
- if (confirmRestart) {
145
- await (0, service_1.restartService)(options);
146
- await dashboardWidget.refresh(); // Refresh dashboard after action
147
- }
148
- else {
149
- logger_1.default.info('已取消重启操作');
150
- await promptContinue();
151
- }
152
- return false;
153
- case 'user':
154
- // Show user management submenu
155
- navigationManager.push('User Management');
156
- const result = await handleUserManagementMenu(options);
157
- navigationManager.pop();
158
- return result;
159
- case 'quota':
160
- // Show quota management submenu
161
- navigationManager.push('Quota Management');
162
- const quotaResult = await handleQuotaManagementMenu(options);
163
- navigationManager.pop();
164
- return quotaResult;
165
- case 'config':
166
- navigationManager.push('Config');
167
- await (0, config_1.showConfigMenu)({ configPath: options.configPath, serviceName: options.serviceName });
168
- navigationManager.pop();
169
- return false;
170
- case 'logs':
171
- navigationManager.push('Logs');
172
- await (0, logs_1.showLogsMenu)({ serviceName: options.serviceName });
173
- navigationManager.pop();
174
- return false;
175
- default:
176
- logger_1.default.warn(`未知选项: ${selection}`);
177
- return false;
178
- }
179
- }
180
- /**
181
- * Handle user management submenu
182
- */
183
- async function handleUserManagementMenu(options) {
184
- while (true) {
185
- // Render Frame
186
- screenManager.clear();
187
- await dashboardWidget.refresh();
188
- screenManager.renderHeader(dashboardWidget, navigationManager.getBreadcrumb());
189
- // Submenu Header - Use theme colors
190
- console.log(theme_1.THEME.secondary(`${ui_symbols_1.menuIcons.USER} 用户管理`));
191
- logger_1.default.separator();
192
- logger_1.default.newline();
193
- const userMenuOptions = [
194
- { name: `${theme_1.THEME.primary('[列表]')} ${theme_1.THEME.neutral('查看用户列表')}`, value: 'user-list' },
195
- { name: `${theme_1.THEME.success('[添加]')} ${theme_1.THEME.neutral('添加用户')}`, value: 'user-add' },
196
- { name: `${theme_1.THEME.error('[删除]')} ${theme_1.THEME.neutral('删除用户')}`, value: 'user-delete' },
197
- {
198
- name: `${theme_1.THEME.secondary('[分享]')} ${theme_1.THEME.neutral('显示分享链接')}`,
199
- value: 'user-share',
200
- },
201
- {
202
- name: `${theme_1.THEME.primary('[Clash]')} ${theme_1.THEME.neutral('生成 Clash 配置')}`,
203
- value: 'user-clash',
204
- },
205
- new prompts_1.Separator(),
206
- { name: `${theme_1.THEME.neutral('[返回]')} ${theme_1.THEME.neutral('返回主菜单')}`, value: 'back' },
207
- ];
208
- const selection = await showMenu(userMenuOptions, chalk_1.default.bold('请选择操作:'));
209
- switch (selection) {
210
- case 'back':
211
- return false; // Return to main menu
212
- case 'user-list':
213
- navigationManager.push('List Users');
214
- await (0, user_1.listUsers)(options);
215
- await promptContinue();
216
- navigationManager.pop();
217
- break;
218
- case 'user-add':
219
- navigationManager.push('Add User');
220
- await (0, user_1.addUser)(options);
221
- await dashboardWidget.refresh();
222
- await promptContinue();
223
- navigationManager.pop();
224
- break;
225
- case 'user-delete':
226
- navigationManager.push('Delete User');
227
- await (0, user_1.deleteUser)(options);
228
- await dashboardWidget.refresh();
229
- await promptContinue();
230
- navigationManager.pop();
231
- break;
232
- case 'user-share':
233
- navigationManager.push('Share Link');
234
- await (0, user_1.showUserShare)(options);
235
- await promptContinue();
236
- navigationManager.pop();
237
- break;
238
- case 'user-clash':
239
- navigationManager.push('Generate Clash Config');
240
- await (0, user_1.generateClashConfig)(options);
241
- await promptContinue();
242
- navigationManager.pop();
243
- break;
244
- default:
245
- logger_1.default.warn(`未知选项: ${selection}`);
246
- break;
247
- }
248
- }
249
- }
250
- /**
251
- * Handle quota management submenu
252
- */
253
- async function handleQuotaManagementMenu(options) {
254
- while (true) {
255
- // Render Frame
256
- screenManager.clear();
257
- await dashboardWidget.refresh();
258
- screenManager.renderHeader(dashboardWidget, navigationManager.getBreadcrumb());
259
- // Submenu Header - Use theme colors
260
- console.log(theme_1.THEME.secondary(`${ui_symbols_1.menuIcons.QUOTA} 流量配额管理`));
261
- logger_1.default.separator();
262
- logger_1.default.newline();
263
- const quotaMenuOptions = [
264
- { name: `${theme_1.THEME.primary('[列表]')} ${theme_1.THEME.neutral('查看配额列表')}`, value: 'quota-list' },
265
- { name: `${theme_1.THEME.success('[设置]')} ${theme_1.THEME.neutral('设置用户配额')}`, value: 'quota-set' },
266
- {
267
- name: `${theme_1.THEME.secondary('[详情]')} ${theme_1.THEME.neutral('查看配额详情')}`,
268
- value: 'quota-show',
269
- },
270
- { name: `${theme_1.THEME.warning('[重置]')} ${theme_1.THEME.neutral('重置已用流量')}`, value: 'quota-reset' },
271
- {
272
- name: `${theme_1.THEME.success('[启用]')} ${theme_1.THEME.neutral('重新启用用户')}`,
273
- value: 'quota-reenable',
274
- },
275
- new prompts_1.Separator(),
276
- { name: `${theme_1.THEME.warning('[检查]')} ${theme_1.THEME.neutral('执行配额检查')}`, value: 'quota-check' },
277
- {
278
- name: `${theme_1.THEME.primary('[配置]')} ${theme_1.THEME.neutral('配置 Stats API')}`,
279
- value: 'stats-config',
280
- },
281
- new prompts_1.Separator(),
282
- { name: `${theme_1.THEME.neutral('[返回]')} ${theme_1.THEME.neutral('返回主菜单')}`, value: 'back' },
283
- ];
284
- const selection = await showMenu(quotaMenuOptions, chalk_1.default.bold('请选择操作:'));
285
- switch (selection) {
286
- case 'back':
287
- return false; // Return to main menu
288
- case 'quota-list':
289
- navigationManager.push('List Quotas');
290
- await (0, quota_1.listQuotas)(options);
291
- await promptContinue();
292
- navigationManager.pop();
293
- break;
294
- case 'quota-set':
295
- navigationManager.push('Set Quota');
296
- await (0, quota_1.setQuota)(options);
297
- await dashboardWidget.refresh();
298
- await promptContinue();
299
- navigationManager.pop();
300
- break;
301
- case 'quota-show':
302
- navigationManager.push('Quota Details');
303
- await (0, quota_1.showQuota)(options);
304
- await promptContinue();
305
- navigationManager.pop();
306
- break;
307
- case 'quota-reset':
308
- navigationManager.push('Reset Usage');
309
- await (0, quota_1.resetQuota)(options);
310
- await dashboardWidget.refresh();
311
- await promptContinue();
312
- navigationManager.pop();
313
- break;
314
- case 'quota-reenable':
315
- navigationManager.push('Re-enable User');
316
- await (0, quota_1.reenableUser)(options);
317
- await dashboardWidget.refresh();
318
- await promptContinue();
319
- navigationManager.pop();
320
- break;
321
- case 'quota-check':
322
- navigationManager.push('Quota Check');
323
- await (0, quota_1.executeQuotaCheck)(options);
324
- await dashboardWidget.refresh();
325
- await promptContinue();
326
- navigationManager.pop();
327
- break;
328
- case 'stats-config':
329
- navigationManager.push('Stats API Config');
330
- await (0, quota_1.configureStatsApi)(options);
331
- await dashboardWidget.refresh();
332
- await promptContinue();
333
- navigationManager.pop();
334
- break;
335
- default:
336
- logger_1.default.warn(`未知选项: ${selection}`);
337
- break;
338
- }
339
- }
340
- }
341
- /**
342
- * Prompt user to continue
343
- */
344
- async function promptContinue() {
345
- await (0, prompts_1.input)({
346
- message: '按 Enter 继续...',
347
- });
348
- }
349
- /**
350
- * Handle SIGINT (Ctrl+C)
351
- */
352
- async function handleSigInt() {
353
- logger_1.default.newline();
354
- const shouldExit = await (0, prompts_1.confirm)({
355
- message: theme_1.THEME.warning('确定要退出吗?'),
356
- default: false,
357
- });
358
- return shouldExit;
359
- }
360
- /**
361
- * Main interactive menu loop
362
- */
363
- async function startInteractiveMenu(options) {
364
- const trans = (0, i18n_1.t)();
365
- // Detect terminal size and validate
366
- const terminalSize = layout_manager_1.default.detectTerminalSize();
367
- const validation = layout_manager_1.default.validateTerminalSize(terminalSize);
368
- // Initialize Dashboard Widget
369
- dashboardWidget = new dashboard_widget_1.DashboardWidget(options.serviceName, options.configPath);
370
- // Warn if terminal is too small
371
- if (!validation.isValid) {
372
- logger_1.default.newline();
373
- logger_1.default.warn(validation.message);
374
- logger_1.default.info(validation.suggestion);
375
- logger_1.default.newline();
376
- }
377
- // Setup SIGINT handler
378
- let sigintHandled = false;
379
- const sigintHandler = async () => {
380
- if (sigintHandled)
381
- return;
382
- sigintHandled = true;
383
- const shouldExit = await handleSigInt();
384
- if (shouldExit) {
385
- logger_1.default.info('👋 再见!');
386
- process.exit(exit_codes_1.ExitCode.SUCCESS);
387
- }
388
- else {
389
- sigintHandled = false;
390
- // Continue with menu
391
- }
392
- };
393
- process.on('SIGINT', sigintHandler);
394
- try {
395
- // Main menu loop
396
- let shouldExit = false;
397
- while (!shouldExit) {
398
- // 1. Clear Screen
399
- screenManager.clear();
400
- // 2. Refresh Dashboard Data
401
- await dashboardWidget.refresh();
402
- // 3. Render Header (Dashboard + Breadcrumb)
403
- screenManager.renderHeader(dashboardWidget, navigationManager.getBreadcrumb());
404
- logger_1.default.newline();
405
- // Get menu options
406
- const menuOptions = getMainMenuOptions();
407
- // Show menu and get selection
408
- const selection = await showMenu(menuOptions, chalk_1.default.bold(trans.actions.selectAction));
409
- // Handle selection
410
- shouldExit = await handleMenuSelection(selection, options);
411
- }
412
- logger_1.default.success(trans.messages.thankYou || '感谢使用 Xray Manager!');
413
- }
414
- finally {
415
- process.removeListener('SIGINT', sigintHandler);
416
- }
417
- }
418
- //# sourceMappingURL=interactive.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"interactive.js","sourceRoot":"","sources":["../../src/commands/interactive.ts"],"names":[],"mappings":"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"}
@@ -1,62 +0,0 @@
1
- /**
2
- * Logs Command Handler
3
- *
4
- * Handles log viewing commands (view, follow, filter)
5
- *
6
- * @module commands/logs
7
- */
8
- /**
9
- * Logs command options
10
- */
11
- export interface LogsCommandOptions {
12
- /** Service name */
13
- serviceName?: string;
14
- /** JSON output mode */
15
- json?: boolean;
16
- /** Log level filter */
17
- level?: string;
18
- /** Time range start */
19
- since?: string;
20
- /** Number of lines */
21
- lines?: number;
22
- /** Follow mode */
23
- follow?: boolean;
24
- }
25
- /**
26
- * View recent logs
27
- *
28
- * @param options - Command options
29
- */
30
- export declare function viewLogs(options?: LogsCommandOptions): Promise<void>;
31
- /**
32
- * Follow logs in real-time
33
- *
34
- * @param options - Command options
35
- */
36
- export declare function followLogs(options?: LogsCommandOptions): Promise<void>;
37
- /**
38
- * Interactive log filtering
39
- *
40
- * @param options - Command options
41
- */
42
- export declare function filterLogs(options?: LogsCommandOptions): Promise<void>;
43
- /**
44
- * Show logs submenu
45
- *
46
- * @param options - Command options
47
- * @returns Selected action result
48
- */
49
- export declare function showLogsMenu(options?: LogsCommandOptions): Promise<void>;
50
- /**
51
- * View access logs from file
52
- *
53
- * @param options - Command options
54
- */
55
- export declare function viewAccessLogs(options?: LogsCommandOptions): Promise<void>;
56
- /**
57
- * View error logs from file
58
- *
59
- * @param options - Command options
60
- */
61
- export declare function viewErrorLogs(options?: LogsCommandOptions): Promise<void>;
62
- //# sourceMappingURL=logs.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"logs.d.ts","sourceRoot":"","sources":["../../src/commands/logs.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAYH;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,mBAAmB;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,uBAAuB;IACvB,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf,uBAAuB;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,uBAAuB;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,sBAAsB;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,kBAAkB;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAgFD;;;;GAIG;AACH,wBAAsB,QAAQ,CAAC,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CAuD9E;AAED;;;;GAIG;AACH,wBAAsB,UAAU,CAAC,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CAsDhF;AAED;;;;GAIG;AACH,wBAAsB,UAAU,CAAC,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CAiEhF;AAED;;;;;GAKG;AACH,wBAAsB,YAAY,CAAC,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CAwClF;AAED;;;;GAIG;AACH,wBAAsB,cAAc,CAAC,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CAyCpF;AAED;;;;GAIG;AACH,wBAAsB,aAAa,CAAC,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CAyCnF"}