@wundr.io/cli 1.0.12 → 1.0.14

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 (233) hide show
  1. package/dist/ai/ai-service.d.ts +152 -0
  2. package/dist/ai/ai-service.d.ts.map +1 -0
  3. package/dist/ai/ai-service.js +430 -0
  4. package/dist/ai/ai-service.js.map +1 -0
  5. package/dist/ai/claude-client.d.ts +130 -0
  6. package/dist/ai/claude-client.d.ts.map +1 -0
  7. package/dist/ai/claude-client.js +340 -0
  8. package/dist/ai/claude-client.js.map +1 -0
  9. package/dist/ai/conversation-manager.d.ts +164 -0
  10. package/dist/ai/conversation-manager.d.ts.map +1 -0
  11. package/dist/ai/conversation-manager.js +614 -0
  12. package/dist/ai/conversation-manager.js.map +1 -0
  13. package/dist/ai/index.d.ts +5 -0
  14. package/dist/ai/index.d.ts.map +1 -0
  15. package/dist/ai/index.js +8 -0
  16. package/dist/ai/index.js.map +1 -0
  17. package/dist/cli.d.ts +36 -0
  18. package/dist/cli.d.ts.map +1 -0
  19. package/dist/cli.js +192 -0
  20. package/dist/cli.js.map +1 -0
  21. package/dist/commands/ai.d.ts +89 -0
  22. package/dist/commands/ai.d.ts.map +1 -0
  23. package/dist/commands/ai.js +954 -0
  24. package/dist/commands/ai.js.map +1 -0
  25. package/dist/commands/alignment.d.ts +78 -0
  26. package/dist/commands/alignment.d.ts.map +1 -0
  27. package/dist/commands/alignment.js +817 -0
  28. package/dist/commands/alignment.js.map +1 -0
  29. package/dist/commands/analyze-optimized.d.ts +14 -0
  30. package/dist/commands/analyze-optimized.d.ts.map +1 -0
  31. package/dist/commands/analyze-optimized.js +609 -0
  32. package/dist/commands/analyze-optimized.js.map +1 -0
  33. package/dist/commands/analyze.d.ts +65 -0
  34. package/dist/commands/analyze.d.ts.map +1 -0
  35. package/dist/commands/analyze.js +435 -0
  36. package/dist/commands/analyze.js.map +1 -0
  37. package/dist/commands/batch.d.ts +93 -0
  38. package/dist/commands/batch.d.ts.map +1 -0
  39. package/dist/commands/batch.js +854 -0
  40. package/dist/commands/batch.js.map +1 -0
  41. package/dist/commands/chat.d.ts +72 -0
  42. package/dist/commands/chat.d.ts.map +1 -0
  43. package/dist/commands/chat.js +678 -0
  44. package/dist/commands/chat.js.map +1 -0
  45. package/dist/commands/claude-init.d.ts +28 -0
  46. package/dist/commands/claude-init.d.ts.map +1 -0
  47. package/dist/commands/claude-init.js +591 -0
  48. package/dist/commands/claude-init.js.map +1 -0
  49. package/dist/commands/claude-setup.d.ts +119 -0
  50. package/dist/commands/claude-setup.d.ts.map +1 -0
  51. package/dist/commands/claude-setup.js +1079 -0
  52. package/dist/commands/claude-setup.js.map +1 -0
  53. package/dist/commands/computer-setup.d.ts +8 -0
  54. package/dist/commands/computer-setup.d.ts.map +1 -0
  55. package/dist/commands/computer-setup.js +877 -0
  56. package/dist/commands/computer-setup.js.map +1 -0
  57. package/dist/commands/create-command.d.ts +7 -0
  58. package/dist/commands/create-command.d.ts.map +1 -0
  59. package/dist/commands/create-command.js +158 -0
  60. package/dist/commands/create-command.js.map +1 -0
  61. package/dist/commands/create.d.ts +74 -0
  62. package/dist/commands/create.d.ts.map +1 -0
  63. package/dist/commands/create.js +556 -0
  64. package/dist/commands/create.js.map +1 -0
  65. package/dist/commands/dashboard.d.ts +91 -0
  66. package/dist/commands/dashboard.d.ts.map +1 -0
  67. package/dist/commands/dashboard.js +538 -0
  68. package/dist/commands/dashboard.js.map +1 -0
  69. package/dist/commands/govern.d.ts +70 -0
  70. package/dist/commands/govern.d.ts.map +1 -0
  71. package/dist/commands/govern.js +481 -0
  72. package/dist/commands/govern.js.map +1 -0
  73. package/dist/commands/governance.d.ts +17 -0
  74. package/dist/commands/governance.d.ts.map +1 -0
  75. package/dist/commands/governance.js +703 -0
  76. package/dist/commands/governance.js.map +1 -0
  77. package/dist/commands/guardian.d.ts +20 -0
  78. package/dist/commands/guardian.d.ts.map +1 -0
  79. package/dist/commands/guardian.js +597 -0
  80. package/dist/commands/guardian.js.map +1 -0
  81. package/dist/commands/init.d.ts +59 -0
  82. package/dist/commands/init.d.ts.map +1 -0
  83. package/dist/commands/init.js +650 -0
  84. package/dist/commands/init.js.map +1 -0
  85. package/dist/commands/orchestrator.d.ts +7 -0
  86. package/dist/commands/orchestrator.d.ts.map +1 -0
  87. package/dist/commands/orchestrator.js +578 -0
  88. package/dist/commands/orchestrator.js.map +1 -0
  89. package/dist/commands/performance-optimizer.d.ts +30 -0
  90. package/dist/commands/performance-optimizer.d.ts.map +1 -0
  91. package/dist/commands/performance-optimizer.js +650 -0
  92. package/dist/commands/performance-optimizer.js.map +1 -0
  93. package/dist/commands/plugins.d.ts +87 -0
  94. package/dist/commands/plugins.d.ts.map +1 -0
  95. package/dist/commands/plugins.js +685 -0
  96. package/dist/commands/plugins.js.map +1 -0
  97. package/dist/commands/rag.d.ts +7 -0
  98. package/dist/commands/rag.d.ts.map +1 -0
  99. package/dist/commands/rag.js +751 -0
  100. package/dist/commands/rag.js.map +1 -0
  101. package/dist/commands/session.d.ts +41 -0
  102. package/dist/commands/session.d.ts.map +1 -0
  103. package/dist/commands/session.js +441 -0
  104. package/dist/commands/session.js.map +1 -0
  105. package/dist/commands/setup.d.ts +24 -0
  106. package/dist/commands/setup.d.ts.map +1 -0
  107. package/dist/commands/setup.js +172 -0
  108. package/dist/commands/setup.js.map +1 -0
  109. package/dist/commands/test-init.d.ts +9 -0
  110. package/dist/commands/test-init.d.ts.map +1 -0
  111. package/dist/commands/test-init.js +222 -0
  112. package/dist/commands/test-init.js.map +1 -0
  113. package/dist/commands/test.d.ts +25 -0
  114. package/dist/commands/test.d.ts.map +1 -0
  115. package/dist/commands/test.js +217 -0
  116. package/dist/commands/test.js.map +1 -0
  117. package/dist/commands/watch.d.ts +76 -0
  118. package/dist/commands/watch.d.ts.map +1 -0
  119. package/dist/commands/watch.js +613 -0
  120. package/dist/commands/watch.js.map +1 -0
  121. package/dist/commands/worktree.d.ts +63 -0
  122. package/dist/commands/worktree.d.ts.map +1 -0
  123. package/dist/commands/worktree.js +774 -0
  124. package/dist/commands/worktree.js.map +1 -0
  125. package/dist/context/context-manager.d.ts +155 -0
  126. package/dist/context/context-manager.d.ts.map +1 -0
  127. package/dist/context/context-manager.js +383 -0
  128. package/dist/context/context-manager.js.map +1 -0
  129. package/dist/context/index.d.ts +3 -0
  130. package/dist/context/index.d.ts.map +1 -0
  131. package/dist/context/index.js +6 -0
  132. package/dist/context/index.js.map +1 -0
  133. package/dist/context/session-manager.d.ts +207 -0
  134. package/dist/context/session-manager.d.ts.map +1 -0
  135. package/dist/context/session-manager.js +686 -0
  136. package/dist/context/session-manager.js.map +1 -0
  137. package/dist/framework/command-interface.d.ts +349 -0
  138. package/dist/framework/command-interface.d.ts.map +1 -0
  139. package/dist/framework/command-interface.js +101 -0
  140. package/dist/framework/command-interface.js.map +1 -0
  141. package/dist/framework/command-registry.d.ts +173 -0
  142. package/dist/framework/command-registry.d.ts.map +1 -0
  143. package/dist/framework/command-registry.js +734 -0
  144. package/dist/framework/command-registry.js.map +1 -0
  145. package/dist/framework/completion-exporter.d.ts +79 -0
  146. package/dist/framework/completion-exporter.d.ts.map +1 -0
  147. package/dist/framework/completion-exporter.js +259 -0
  148. package/dist/framework/completion-exporter.js.map +1 -0
  149. package/dist/framework/debug-logger.d.ts +163 -0
  150. package/dist/framework/debug-logger.d.ts.map +1 -0
  151. package/dist/framework/debug-logger.js +373 -0
  152. package/dist/framework/debug-logger.js.map +1 -0
  153. package/dist/framework/error-handler.d.ts +196 -0
  154. package/dist/framework/error-handler.d.ts.map +1 -0
  155. package/dist/framework/error-handler.js +613 -0
  156. package/dist/framework/error-handler.js.map +1 -0
  157. package/dist/framework/help-generator.d.ts +78 -0
  158. package/dist/framework/help-generator.d.ts.map +1 -0
  159. package/dist/framework/help-generator.js +414 -0
  160. package/dist/framework/help-generator.js.map +1 -0
  161. package/dist/framework/index.d.ts +62 -0
  162. package/dist/framework/index.d.ts.map +1 -0
  163. package/dist/framework/index.js +95 -0
  164. package/dist/framework/index.js.map +1 -0
  165. package/dist/framework/interactive-repl.d.ts +138 -0
  166. package/dist/framework/interactive-repl.d.ts.map +1 -0
  167. package/dist/framework/interactive-repl.js +567 -0
  168. package/dist/framework/interactive-repl.js.map +1 -0
  169. package/dist/framework/output-formatter.d.ts +274 -0
  170. package/dist/framework/output-formatter.d.ts.map +1 -0
  171. package/dist/framework/output-formatter.js +545 -0
  172. package/dist/framework/output-formatter.js.map +1 -0
  173. package/dist/framework/progress-manager.d.ts +192 -0
  174. package/dist/framework/progress-manager.d.ts.map +1 -0
  175. package/dist/framework/progress-manager.js +408 -0
  176. package/dist/framework/progress-manager.js.map +1 -0
  177. package/dist/index.d.ts +8 -0
  178. package/dist/index.d.ts.map +1 -0
  179. package/dist/index.js +51 -0
  180. package/dist/index.js.map +1 -0
  181. package/dist/interactive/interactive-mode.d.ts +76 -0
  182. package/dist/interactive/interactive-mode.d.ts.map +1 -0
  183. package/dist/interactive/interactive-mode.js +732 -0
  184. package/dist/interactive/interactive-mode.js.map +1 -0
  185. package/dist/nlp/command-mapper.d.ts +174 -0
  186. package/dist/nlp/command-mapper.d.ts.map +1 -0
  187. package/dist/nlp/command-mapper.js +624 -0
  188. package/dist/nlp/command-mapper.js.map +1 -0
  189. package/dist/nlp/command-parser.d.ts +106 -0
  190. package/dist/nlp/command-parser.d.ts.map +1 -0
  191. package/dist/nlp/command-parser.js +417 -0
  192. package/dist/nlp/command-parser.js.map +1 -0
  193. package/dist/nlp/index.d.ts +5 -0
  194. package/dist/nlp/index.d.ts.map +1 -0
  195. package/dist/nlp/index.js +8 -0
  196. package/dist/nlp/index.js.map +1 -0
  197. package/dist/nlp/intent-classifier.d.ts +59 -0
  198. package/dist/nlp/intent-classifier.d.ts.map +1 -0
  199. package/dist/nlp/intent-classifier.js +384 -0
  200. package/dist/nlp/intent-classifier.js.map +1 -0
  201. package/dist/nlp/intent-parser.d.ts +152 -0
  202. package/dist/nlp/intent-parser.d.ts.map +1 -0
  203. package/dist/nlp/intent-parser.js +746 -0
  204. package/dist/nlp/intent-parser.js.map +1 -0
  205. package/dist/plugins/plugin-manager.d.ts +121 -0
  206. package/dist/plugins/plugin-manager.d.ts.map +1 -0
  207. package/dist/plugins/plugin-manager.js +606 -0
  208. package/dist/plugins/plugin-manager.js.map +1 -0
  209. package/dist/types/index.d.ts +224 -0
  210. package/dist/types/index.d.ts.map +1 -0
  211. package/dist/types/index.js +3 -0
  212. package/dist/types/index.js.map +1 -0
  213. package/dist/utils/backup-rollback-manager.d.ts +72 -0
  214. package/dist/utils/backup-rollback-manager.d.ts.map +1 -0
  215. package/dist/utils/backup-rollback-manager.js +288 -0
  216. package/dist/utils/backup-rollback-manager.js.map +1 -0
  217. package/dist/utils/claude-config-installer.d.ts +98 -0
  218. package/dist/utils/claude-config-installer.d.ts.map +1 -0
  219. package/dist/utils/claude-config-installer.js +678 -0
  220. package/dist/utils/claude-config-installer.js.map +1 -0
  221. package/dist/utils/config-manager.d.ts +73 -0
  222. package/dist/utils/config-manager.d.ts.map +1 -0
  223. package/dist/utils/config-manager.js +339 -0
  224. package/dist/utils/config-manager.js.map +1 -0
  225. package/dist/utils/error-handler.d.ts +46 -0
  226. package/dist/utils/error-handler.d.ts.map +1 -0
  227. package/dist/utils/error-handler.js +169 -0
  228. package/dist/utils/error-handler.js.map +1 -0
  229. package/dist/utils/logger.d.ts +25 -0
  230. package/dist/utils/logger.d.ts.map +1 -0
  231. package/dist/utils/logger.js +105 -0
  232. package/dist/utils/logger.js.map +1 -0
  233. package/package.json +6 -6
@@ -0,0 +1,538 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DashboardCommands = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const child_process_1 = require("child_process");
6
+ const path_1 = tslib_1.__importDefault(require("path"));
7
+ const chalk_1 = tslib_1.__importDefault(require("chalk"));
8
+ const fs_extra_1 = tslib_1.__importDefault(require("fs-extra"));
9
+ const error_handler_1 = require("../utils/error-handler");
10
+ const logger_1 = require("../utils/logger");
11
+ /**
12
+ * Dashboard commands for web interface and visualization
13
+ */
14
+ class DashboardCommands {
15
+ program;
16
+ configManager;
17
+ pluginManager;
18
+ constructor(program, configManager, pluginManager) {
19
+ this.program = program;
20
+ this.configManager = configManager;
21
+ this.pluginManager = pluginManager;
22
+ this.registerCommands();
23
+ }
24
+ registerCommands() {
25
+ const dashboardCmd = this.program
26
+ .command('dashboard')
27
+ .alias('dash')
28
+ .description('dashboard and visualization tools');
29
+ // Start dashboard
30
+ dashboardCmd
31
+ .command('start')
32
+ .description('start the web dashboard')
33
+ .option('--port <port>', 'dashboard port', '3000')
34
+ .option('--host <host>', 'dashboard host', 'localhost')
35
+ .option('--open', 'open browser automatically')
36
+ .option('--dev', 'start in development mode')
37
+ .action(async (options) => {
38
+ await this.startDashboard(options);
39
+ });
40
+ // Stop dashboard
41
+ dashboardCmd
42
+ .command('stop')
43
+ .description('stop the web dashboard')
44
+ .action(async () => {
45
+ await this.stopDashboard();
46
+ });
47
+ // Dashboard status
48
+ dashboardCmd
49
+ .command('status')
50
+ .description('check dashboard status')
51
+ .action(async () => {
52
+ await this.checkDashboardStatus();
53
+ });
54
+ // Generate reports
55
+ dashboardCmd
56
+ .command('report <type>')
57
+ .description('generate dashboard reports')
58
+ .option('--output <path>', 'output directory')
59
+ .option('--format <format>', 'report format (html, pdf, json)', 'html')
60
+ .option('--period <period>', 'report period (daily, weekly, monthly)', 'weekly')
61
+ .action(async (type, options) => {
62
+ await this.generateReport(type, options);
63
+ });
64
+ // Export data
65
+ dashboardCmd
66
+ .command('export <type>')
67
+ .description('export dashboard data')
68
+ .option('--output <path>', 'output file path')
69
+ .option('--format <format>', 'export format (json, csv, xlsx)', 'json')
70
+ .option('--filter <filter>', 'data filter')
71
+ .action(async (type, options) => {
72
+ await this.exportData(type, options);
73
+ });
74
+ // Import data
75
+ dashboardCmd
76
+ .command('import <file>')
77
+ .description('import data into dashboard')
78
+ .option('--type <type>', 'data type to import')
79
+ .option('--merge', 'merge with existing data')
80
+ .action(async (file, options) => {
81
+ await this.importData(file, options);
82
+ });
83
+ // Configure dashboard
84
+ dashboardCmd.command('config').description('configure dashboard settings');
85
+ dashboardCmd
86
+ .command('config set <key> <value>')
87
+ .description('set dashboard configuration')
88
+ .action(async (key, value) => {
89
+ await this.setDashboardConfig(key, value);
90
+ });
91
+ dashboardCmd
92
+ .command('config get [key]')
93
+ .description('get dashboard configuration')
94
+ .action(async (key) => {
95
+ await this.getDashboardConfig(key);
96
+ });
97
+ // Manage widgets
98
+ dashboardCmd.command('widget').description('manage dashboard widgets');
99
+ dashboardCmd
100
+ .command('widget add <type>')
101
+ .description('add a new widget')
102
+ .option('--config <config>', 'widget configuration')
103
+ .option('--position <position>', 'widget position')
104
+ .action(async (type, options) => {
105
+ await this.addWidget(type, options);
106
+ });
107
+ dashboardCmd
108
+ .command('widget remove <id>')
109
+ .description('remove a widget')
110
+ .action(async (id) => {
111
+ await this.removeWidget(id);
112
+ });
113
+ dashboardCmd
114
+ .command('widget list')
115
+ .description('list all widgets')
116
+ .action(async () => {
117
+ await this.listWidgets();
118
+ });
119
+ // Manage themes
120
+ dashboardCmd
121
+ .command('theme <action>')
122
+ .description('manage dashboard themes')
123
+ .option('--name <name>', 'theme name')
124
+ .option('--config <config>', 'theme configuration')
125
+ .action(async (action, options) => {
126
+ await this.manageTheme(action, options);
127
+ });
128
+ }
129
+ /**
130
+ * Start the web dashboard
131
+ */
132
+ async startDashboard(options) {
133
+ try {
134
+ logger_1.logger.info('Starting Wundr dashboard...');
135
+ // Check if dashboard is already running
136
+ const isRunning = await this.isDashboardRunning();
137
+ if (isRunning) {
138
+ logger_1.logger.warn('Dashboard is already running');
139
+ if (options.open) {
140
+ await this.openBrowser(`http://${options.host}:${options.port}`);
141
+ }
142
+ return;
143
+ }
144
+ // Ensure dashboard assets are available
145
+ await this.ensureDashboardAssets();
146
+ // Start the dashboard server
147
+ const dashboardProcess = await this.startDashboardServer(options);
148
+ // Save process info
149
+ await this.saveDashboardProcess(dashboardProcess, options);
150
+ logger_1.logger.success(`Dashboard started at http://${options.host}:${options.port}`);
151
+ if (options.open) {
152
+ await this.openBrowser(`http://${options.host}:${options.port}`);
153
+ }
154
+ // Keep the process alive if not in dev mode
155
+ if (!options.dev) {
156
+ logger_1.logger.info('Dashboard is running in the background. Use "wundr dashboard stop" to stop it.');
157
+ }
158
+ }
159
+ catch (error) {
160
+ throw error_handler_1.errorHandler.createError('WUNDR_DASHBOARD_START_FAILED', 'Failed to start dashboard', { options }, true);
161
+ }
162
+ }
163
+ /**
164
+ * Stop the web dashboard
165
+ */
166
+ async stopDashboard() {
167
+ try {
168
+ logger_1.logger.info('Stopping dashboard...');
169
+ const processInfo = await this.loadDashboardProcess();
170
+ if (!processInfo) {
171
+ logger_1.logger.warn('No running dashboard found');
172
+ return;
173
+ }
174
+ // Kill the dashboard process
175
+ process.kill(processInfo.pid, 'SIGTERM');
176
+ // Clean up process info
177
+ await this.cleanupDashboardProcess();
178
+ logger_1.logger.success('Dashboard stopped successfully');
179
+ }
180
+ catch (error) {
181
+ throw error_handler_1.errorHandler.createError('WUNDR_DASHBOARD_STOP_FAILED', 'Failed to stop dashboard', {}, true);
182
+ }
183
+ }
184
+ /**
185
+ * Check dashboard status
186
+ */
187
+ async checkDashboardStatus() {
188
+ try {
189
+ const isRunning = await this.isDashboardRunning();
190
+ const processInfo = await this.loadDashboardProcess();
191
+ if (isRunning && processInfo) {
192
+ logger_1.logger.success(`Dashboard is running on http://${processInfo.host}:${processInfo.port}`);
193
+ logger_1.logger.info(`Process ID: ${processInfo.pid}`);
194
+ logger_1.logger.info(`Started: ${new Date(processInfo.started).toLocaleString()}`);
195
+ }
196
+ else {
197
+ logger_1.logger.info('Dashboard is not running');
198
+ }
199
+ }
200
+ catch (error) {
201
+ throw error_handler_1.errorHandler.createError('WUNDR_DASHBOARD_STATUS_FAILED', 'Failed to check dashboard status', {}, true);
202
+ }
203
+ }
204
+ /**
205
+ * Generate dashboard reports
206
+ */
207
+ async generateReport(type, options) {
208
+ try {
209
+ logger_1.logger.info(`Generating ${type} report...`);
210
+ const reportData = await this.collectReportData(type, options.period);
211
+ const report = await this.formatReport(reportData, options.format);
212
+ const outputPath = options.output || this.getDefaultReportPath(type, options.format);
213
+ await this.saveReport(report, outputPath);
214
+ logger_1.logger.success(`Report generated: ${outputPath}`);
215
+ }
216
+ catch (error) {
217
+ throw error_handler_1.errorHandler.createError('WUNDR_DASHBOARD_REPORT_FAILED', 'Failed to generate report', { type, options }, true);
218
+ }
219
+ }
220
+ /**
221
+ * Export dashboard data
222
+ */
223
+ async exportData(type, options) {
224
+ try {
225
+ logger_1.logger.info(`Exporting ${type} data...`);
226
+ const data = await this.collectExportData(type, options.filter);
227
+ const exportedData = await this.formatExportData(data, options.format);
228
+ const outputPath = options.output || this.getDefaultExportPath(type, options.format);
229
+ await this.saveExportData(exportedData, outputPath);
230
+ logger_1.logger.success(`Data exported: ${outputPath}`);
231
+ }
232
+ catch (error) {
233
+ throw error_handler_1.errorHandler.createError('WUNDR_DASHBOARD_EXPORT_FAILED', 'Failed to export data', { type, options }, true);
234
+ }
235
+ }
236
+ /**
237
+ * Import data into dashboard
238
+ */
239
+ async importData(file, options) {
240
+ try {
241
+ logger_1.logger.info(`Importing data from ${chalk_1.default.cyan(file)}...`);
242
+ if (!(await fs_extra_1.default.pathExists(file))) {
243
+ throw new Error(`File not found: ${file}`);
244
+ }
245
+ const data = await this.loadImportData(file);
246
+ const validatedData = await this.validateImportData(data, options.type);
247
+ if (options.merge) {
248
+ await this.mergeImportData(validatedData, options.type);
249
+ }
250
+ else {
251
+ await this.replaceImportData(validatedData, options.type);
252
+ }
253
+ logger_1.logger.success(`Data imported successfully from ${file}`);
254
+ }
255
+ catch (error) {
256
+ throw error_handler_1.errorHandler.createError('WUNDR_DASHBOARD_IMPORT_FAILED', 'Failed to import data', { file, options }, true);
257
+ }
258
+ }
259
+ /**
260
+ * Set dashboard configuration
261
+ */
262
+ async setDashboardConfig(key, value) {
263
+ try {
264
+ this.configManager.set(`dashboard.${key}`, value);
265
+ await this.configManager.saveConfig();
266
+ logger_1.logger.success(`Dashboard configuration updated: ${key} = ${value}`);
267
+ }
268
+ catch (error) {
269
+ throw error_handler_1.errorHandler.createError('WUNDR_DASHBOARD_CONFIG_SET_FAILED', 'Failed to set dashboard configuration', { key, value }, true);
270
+ }
271
+ }
272
+ /**
273
+ * Get dashboard configuration
274
+ */
275
+ async getDashboardConfig(key) {
276
+ try {
277
+ if (key) {
278
+ const value = this.configManager.get(`dashboard.${key}`);
279
+ console.log(`${key}: ${value}`);
280
+ }
281
+ else {
282
+ const dashboardConfig = this.configManager.get('dashboard');
283
+ console.log(JSON.stringify(dashboardConfig, null, 2));
284
+ }
285
+ }
286
+ catch (error) {
287
+ throw error_handler_1.errorHandler.createError('WUNDR_DASHBOARD_CONFIG_GET_FAILED', 'Failed to get dashboard configuration', { key }, true);
288
+ }
289
+ }
290
+ /**
291
+ * Add a new widget
292
+ */
293
+ async addWidget(type, options) {
294
+ try {
295
+ logger_1.logger.info(`Adding ${type} widget...`);
296
+ const widget = {
297
+ id: `widget-${Date.now()}`,
298
+ type,
299
+ config: options.config ? JSON.parse(options.config) : {},
300
+ position: options.position
301
+ ? JSON.parse(options.position)
302
+ : { x: 0, y: 0 },
303
+ created: new Date().toISOString(),
304
+ };
305
+ await this.saveWidget(widget);
306
+ logger_1.logger.success(`Widget added: ${widget.id}`);
307
+ }
308
+ catch (error) {
309
+ throw error_handler_1.errorHandler.createError('WUNDR_DASHBOARD_ADD_WIDGET_FAILED', 'Failed to add widget', { type, options }, true);
310
+ }
311
+ }
312
+ /**
313
+ * Remove a widget
314
+ */
315
+ async removeWidget(id) {
316
+ try {
317
+ logger_1.logger.info(`Removing widget: ${chalk_1.default.cyan(id)}`);
318
+ await this.deleteWidget(id);
319
+ logger_1.logger.success(`Widget removed: ${id}`);
320
+ }
321
+ catch (error) {
322
+ throw error_handler_1.errorHandler.createError('WUNDR_DASHBOARD_REMOVE_WIDGET_FAILED', 'Failed to remove widget', { id }, true);
323
+ }
324
+ }
325
+ /**
326
+ * List all widgets
327
+ */
328
+ async listWidgets() {
329
+ try {
330
+ const widgets = await this.getAllWidgets();
331
+ if (widgets.length === 0) {
332
+ logger_1.logger.info('No widgets configured');
333
+ return;
334
+ }
335
+ logger_1.logger.info(`Dashboard widgets (${widgets.length}):`);
336
+ console.table(widgets.map(widget => ({
337
+ ID: widget.id,
338
+ Type: widget.type,
339
+ Position: `(${widget.position.x}, ${widget.position.y})`,
340
+ Created: new Date(widget.created).toLocaleDateString(),
341
+ })));
342
+ }
343
+ catch (error) {
344
+ throw error_handler_1.errorHandler.createError('WUNDR_DASHBOARD_LIST_WIDGETS_FAILED', 'Failed to list widgets', {}, true);
345
+ }
346
+ }
347
+ /**
348
+ * Manage dashboard themes
349
+ */
350
+ async manageTheme(action, options) {
351
+ try {
352
+ switch (action) {
353
+ case 'list':
354
+ await this.listThemes();
355
+ break;
356
+ case 'set':
357
+ await this.setTheme(options.name);
358
+ break;
359
+ case 'create':
360
+ await this.createTheme(options.name, options.config);
361
+ break;
362
+ case 'delete':
363
+ await this.deleteTheme(options.name);
364
+ break;
365
+ default:
366
+ throw new Error(`Unknown theme action: ${action}`);
367
+ }
368
+ }
369
+ catch (error) {
370
+ throw error_handler_1.errorHandler.createError('WUNDR_DASHBOARD_THEME_FAILED', 'Failed to manage theme', { action, options }, true);
371
+ }
372
+ }
373
+ /**
374
+ * Helper methods for dashboard operations
375
+ */
376
+ async isDashboardRunning() {
377
+ const processInfo = await this.loadDashboardProcess();
378
+ if (!processInfo) {
379
+ return false;
380
+ }
381
+ try {
382
+ process.kill(processInfo.pid, 0);
383
+ return true;
384
+ }
385
+ catch {
386
+ return false;
387
+ }
388
+ }
389
+ async ensureDashboardAssets() {
390
+ // Ensure dashboard assets are available
391
+ const assetsPath = path_1.default.join(__dirname, '../../dashboard-assets');
392
+ if (!(await fs_extra_1.default.pathExists(assetsPath))) {
393
+ logger_1.logger.info('Dashboard assets not found, downloading...');
394
+ // Download or copy dashboard assets
395
+ }
396
+ }
397
+ async startDashboardServer(options) {
398
+ // Start the actual dashboard server process
399
+ const serverPath = path_1.default.join(__dirname, '../../dashboard-server');
400
+ const child = (0, child_process_1.spawn)('node', [serverPath], {
401
+ env: {
402
+ ...process.env,
403
+ PORT: options.port,
404
+ HOST: options.host,
405
+ NODE_ENV: options.dev ? 'development' : 'production',
406
+ },
407
+ detached: !options.dev,
408
+ stdio: options.dev ? 'inherit' : 'ignore',
409
+ });
410
+ if (!options.dev) {
411
+ child.unref();
412
+ }
413
+ return {
414
+ pid: child.pid,
415
+ host: options.host,
416
+ port: options.port,
417
+ started: Date.now(),
418
+ };
419
+ }
420
+ async saveDashboardProcess(processInfo, options) {
421
+ const processFile = path_1.default.join(process.cwd(), '.wundr', 'dashboard.pid');
422
+ await fs_extra_1.default.ensureDir(path_1.default.dirname(processFile));
423
+ await fs_extra_1.default.writeJson(processFile, { ...processInfo, ...options });
424
+ }
425
+ async loadDashboardProcess() {
426
+ const processFile = path_1.default.join(process.cwd(), '.wundr', 'dashboard.pid');
427
+ if (await fs_extra_1.default.pathExists(processFile)) {
428
+ return await fs_extra_1.default.readJson(processFile);
429
+ }
430
+ return null;
431
+ }
432
+ async cleanupDashboardProcess() {
433
+ const processFile = path_1.default.join(process.cwd(), '.wundr', 'dashboard.pid');
434
+ if (await fs_extra_1.default.pathExists(processFile)) {
435
+ await fs_extra_1.default.remove(processFile);
436
+ }
437
+ }
438
+ async openBrowser(url) {
439
+ const { default: open } = await Promise.resolve().then(() => tslib_1.__importStar(require('open')));
440
+ await open(url);
441
+ }
442
+ // Report generation methods
443
+ async collectReportData(type, period) {
444
+ // Collect data for report generation
445
+ return { type, period, data: [] };
446
+ }
447
+ async formatReport(data, format) {
448
+ // Format report based on requested format
449
+ return data;
450
+ }
451
+ getDefaultReportPath(type, format) {
452
+ return `reports/wundr-${type}-report.${format}`;
453
+ }
454
+ async saveReport(report, outputPath) {
455
+ await fs_extra_1.default.ensureDir(path_1.default.dirname(outputPath));
456
+ if (typeof report === 'string') {
457
+ await fs_extra_1.default.writeFile(outputPath, report);
458
+ }
459
+ else {
460
+ await fs_extra_1.default.writeJson(outputPath, report, { spaces: 2 });
461
+ }
462
+ }
463
+ // Data export/import methods
464
+ async collectExportData(type, filter) {
465
+ return { type, filter, data: [] };
466
+ }
467
+ async formatExportData(data, format) {
468
+ return data;
469
+ }
470
+ getDefaultExportPath(type, format) {
471
+ return `exports/wundr-${type}-export.${format}`;
472
+ }
473
+ async saveExportData(data, outputPath) {
474
+ await fs_extra_1.default.ensureDir(path_1.default.dirname(outputPath));
475
+ await fs_extra_1.default.writeFile(outputPath, JSON.stringify(data, null, 2));
476
+ }
477
+ async loadImportData(file) {
478
+ return await fs_extra_1.default.readJson(file);
479
+ }
480
+ async validateImportData(data, type) {
481
+ // Validate imported data
482
+ return data;
483
+ }
484
+ async mergeImportData(data, type) {
485
+ // Merge imported data with existing data
486
+ logger_1.logger.debug('Merging import data');
487
+ }
488
+ async replaceImportData(data, type) {
489
+ // Replace existing data with imported data
490
+ logger_1.logger.debug('Replacing with import data');
491
+ }
492
+ // Widget management methods
493
+ async saveWidget(widget) {
494
+ const widgetFile = path_1.default.join(process.cwd(), '.wundr', 'widgets', `${widget.id}.json`);
495
+ await fs_extra_1.default.ensureDir(path_1.default.dirname(widgetFile));
496
+ await fs_extra_1.default.writeJson(widgetFile, widget, { spaces: 2 });
497
+ }
498
+ async deleteWidget(id) {
499
+ const widgetFile = path_1.default.join(process.cwd(), '.wundr', 'widgets', `${id}.json`);
500
+ if (await fs_extra_1.default.pathExists(widgetFile)) {
501
+ await fs_extra_1.default.remove(widgetFile);
502
+ }
503
+ }
504
+ async getAllWidgets() {
505
+ const widgetsDir = path_1.default.join(process.cwd(), '.wundr', 'widgets');
506
+ if (!(await fs_extra_1.default.pathExists(widgetsDir))) {
507
+ return [];
508
+ }
509
+ const files = await fs_extra_1.default.readdir(widgetsDir);
510
+ const widgets = [];
511
+ for (const file of files.filter(f => f.endsWith('.json'))) {
512
+ const widget = await fs_extra_1.default.readJson(path_1.default.join(widgetsDir, file));
513
+ widgets.push(widget);
514
+ }
515
+ return widgets;
516
+ }
517
+ // Theme management methods
518
+ async listThemes() {
519
+ const themes = ['default', 'dark', 'light'];
520
+ console.log('Available themes:');
521
+ themes.forEach(theme => console.log(` - ${theme}`));
522
+ }
523
+ async setTheme(name) {
524
+ this.configManager.set('dashboard.theme', name);
525
+ await this.configManager.saveConfig();
526
+ logger_1.logger.success(`Theme set to: ${name}`);
527
+ }
528
+ async createTheme(name, config) {
529
+ logger_1.logger.info(`Creating theme: ${name}`);
530
+ // Implementation for creating custom themes
531
+ }
532
+ async deleteTheme(name) {
533
+ logger_1.logger.info(`Deleting theme: ${name}`);
534
+ // Implementation for deleting custom themes
535
+ }
536
+ }
537
+ exports.DashboardCommands = DashboardCommands;
538
+ //# sourceMappingURL=dashboard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dashboard.js","sourceRoot":"","sources":["../../src/commands/dashboard.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,70 @@
1
+ import type { PluginManager } from '../plugins/plugin-manager';
2
+ import type { ConfigManager } from '../utils/config-manager';
3
+ import type { Command } from 'commander';
4
+ /**
5
+ * Governance commands for compliance and quality control
6
+ */
7
+ export declare class GovernCommands {
8
+ private program;
9
+ private configManager;
10
+ private pluginManager;
11
+ constructor(program: Command, configManager: ConfigManager, pluginManager: PluginManager);
12
+ private registerCommands;
13
+ /**
14
+ * Check compliance against governance rules
15
+ */
16
+ private checkCompliance;
17
+ /**
18
+ * List available governance rules
19
+ */
20
+ private listRules;
21
+ /**
22
+ * Add a new governance rule
23
+ */
24
+ private addRule;
25
+ /**
26
+ * Remove a governance rule
27
+ */
28
+ private removeRule;
29
+ /**
30
+ * Create a new governance policy
31
+ */
32
+ private createPolicy;
33
+ /**
34
+ * Apply a policy to the project
35
+ */
36
+ private applyPolicy;
37
+ /**
38
+ * Check quality gate
39
+ */
40
+ private checkQualityGate;
41
+ /**
42
+ * Create a new quality gate
43
+ */
44
+ private createQualityGate;
45
+ /**
46
+ * Run governance audit
47
+ */
48
+ private runAudit;
49
+ /**
50
+ * Generate governance report
51
+ */
52
+ private generateReport;
53
+ /**
54
+ * Implementation methods
55
+ */
56
+ private checkRule;
57
+ private autoFixViolations;
58
+ private getAllRules;
59
+ private getQualityGates;
60
+ private evaluateQualityGate;
61
+ private auditSecurity;
62
+ private auditQuality;
63
+ private auditCompliance;
64
+ private createGovernanceReport;
65
+ private displayViolations;
66
+ private generateComplianceReport;
67
+ private createViolationsSummary;
68
+ private displayAuditResults;
69
+ }
70
+ //# sourceMappingURL=govern.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"govern.d.ts","sourceRoot":"","sources":["../../src/commands/govern.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC;;GAEG;AACH,qBAAa,cAAc;IAEvB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,aAAa;IACrB,OAAO,CAAC,aAAa;gBAFb,OAAO,EAAE,OAAO,EAChB,aAAa,EAAE,aAAa,EAC5B,aAAa,EAAE,aAAa;IAKtC,OAAO,CAAC,gBAAgB;IA0HxB;;OAEG;YACW,eAAe;IA0C7B;;OAEG;YACW,SAAS;IAgCvB;;OAEG;YACW,OAAO;IAsBrB;;OAEG;YACW,UAAU;IAwBxB;;OAEG;YACW,YAAY;IAgC1B;;OAEG;YACW,WAAW;IAoCzB;;OAEG;YACW,gBAAgB;IA4C9B;;OAEG;YACW,iBAAiB;IA+B/B;;OAEG;YACW,QAAQ;IAwCtB;;OAEG;YACW,cAAc;IAwB5B;;OAEG;YACW,SAAS;YAKT,iBAAiB;YAKjB,WAAW;YAoBX,eAAe;YAKf,mBAAmB;YAOnB,aAAa;YAKb,YAAY;YAKZ,eAAe;YAKf,sBAAsB;IAcpC,OAAO,CAAC,iBAAiB;YAiBX,wBAAwB;IAatC,OAAO,CAAC,uBAAuB;IAiB/B,OAAO,CAAC,mBAAmB;CAe5B"}