@andrebuzeli/git-mcp 5.5.0 → 5.5.2

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 (224) hide show
  1. package/README.md +25 -0
  2. package/dist/config.d.ts +5 -131
  3. package/dist/config.js +28 -430
  4. package/dist/index.d.ts +1 -21
  5. package/dist/index.js +66 -144
  6. package/dist/providers/giteaProvider.d.ts +3 -0
  7. package/dist/providers/giteaProvider.js +12 -0
  8. package/dist/providers/githubProvider.d.ts +2 -0
  9. package/dist/providers/githubProvider.js +7 -0
  10. package/dist/providers/providerManager.d.ts +11 -0
  11. package/dist/providers/providerManager.js +48 -0
  12. package/dist/server.d.ts +6 -40
  13. package/dist/server.js +30 -700
  14. package/dist/tools/gitAnalytics.d.ts +29 -0
  15. package/dist/tools/gitAnalytics.js +72 -0
  16. package/dist/tools/gitArchive.d.ts +6 -0
  17. package/dist/tools/gitArchive.js +27 -0
  18. package/dist/tools/gitBackup.d.ts +10 -0
  19. package/dist/tools/gitBackup.js +44 -0
  20. package/dist/tools/gitBranches.d.ts +72 -0
  21. package/dist/tools/gitBranches.js +97 -0
  22. package/dist/tools/gitConfig.d.ts +34 -0
  23. package/dist/tools/gitConfig.js +73 -0
  24. package/dist/tools/gitFiles.d.ts +24 -0
  25. package/dist/tools/gitFiles.js +53 -0
  26. package/dist/tools/gitIssues.d.ts +21 -0
  27. package/dist/tools/gitIssues.js +193 -0
  28. package/dist/tools/gitMonitor.d.ts +51 -0
  29. package/dist/tools/gitMonitor.js +102 -0
  30. package/dist/tools/gitPackages.d.ts +6 -0
  31. package/dist/tools/gitPackages.js +28 -0
  32. package/dist/tools/gitPulls.d.ts +74 -0
  33. package/dist/tools/gitPulls.js +190 -0
  34. package/dist/tools/gitRelease.d.ts +34 -0
  35. package/dist/tools/gitRelease.js +99 -0
  36. package/dist/tools/gitRemote.d.ts +51 -0
  37. package/dist/tools/gitRemote.js +68 -0
  38. package/dist/tools/gitReset.d.ts +34 -0
  39. package/dist/tools/gitReset.js +64 -0
  40. package/dist/tools/gitStash.d.ts +41 -0
  41. package/dist/tools/gitStash.js +67 -0
  42. package/dist/tools/gitSync.d.ts +25 -0
  43. package/dist/tools/gitSync.js +51 -0
  44. package/dist/tools/gitTags.d.ts +30 -0
  45. package/dist/tools/gitTags.js +69 -0
  46. package/dist/tools/gitWorkflow.d.ts +69 -0
  47. package/dist/tools/gitWorkflow.js +129 -0
  48. package/dist/types.d.ts +10 -0
  49. package/dist/types.js +2 -0
  50. package/dist/utils/errors.d.ts +13 -0
  51. package/dist/utils/errors.js +22 -0
  52. package/dist/utils/safetyController.d.ts +1 -0
  53. package/dist/utils/safetyController.js +15 -0
  54. package/package.json +7 -2
  55. package/dist/config.d.ts.map +0 -1
  56. package/dist/config.js.map +0 -1
  57. package/dist/index.d.ts.map +0 -1
  58. package/dist/index.js.map +0 -1
  59. package/dist/providers/base-provider.d.ts +0 -66
  60. package/dist/providers/base-provider.d.ts.map +0 -1
  61. package/dist/providers/base-provider.js +0 -65
  62. package/dist/providers/base-provider.js.map +0 -1
  63. package/dist/providers/gitea-provider.d.ts +0 -79
  64. package/dist/providers/gitea-provider.d.ts.map +0 -1
  65. package/dist/providers/gitea-provider.js +0 -576
  66. package/dist/providers/gitea-provider.js.map +0 -1
  67. package/dist/providers/github-provider.d.ts +0 -74
  68. package/dist/providers/github-provider.d.ts.map +0 -1
  69. package/dist/providers/github-provider.js +0 -683
  70. package/dist/providers/github-provider.js.map +0 -1
  71. package/dist/providers/index.d.ts +0 -13
  72. package/dist/providers/index.d.ts.map +0 -1
  73. package/dist/providers/index.js +0 -35
  74. package/dist/providers/index.js.map +0 -1
  75. package/dist/providers/provider-factory.d.ts +0 -49
  76. package/dist/providers/provider-factory.d.ts.map +0 -1
  77. package/dist/providers/provider-factory.js +0 -193
  78. package/dist/providers/provider-factory.js.map +0 -1
  79. package/dist/providers/provider-operation-handler.d.ts +0 -115
  80. package/dist/providers/provider-operation-handler.d.ts.map +0 -1
  81. package/dist/providers/provider-operation-handler.js +0 -449
  82. package/dist/providers/provider-operation-handler.js.map +0 -1
  83. package/dist/providers/types.d.ts +0 -200
  84. package/dist/providers/types.d.ts.map +0 -1
  85. package/dist/providers/types.js +0 -8
  86. package/dist/providers/types.js.map +0 -1
  87. package/dist/server.d.ts.map +0 -1
  88. package/dist/server.js.map +0 -1
  89. package/dist/tools/git-analytics.d.ts +0 -237
  90. package/dist/tools/git-analytics.d.ts.map +0 -1
  91. package/dist/tools/git-analytics.js +0 -828
  92. package/dist/tools/git-analytics.js.map +0 -1
  93. package/dist/tools/git-archive.d.ts +0 -113
  94. package/dist/tools/git-archive.d.ts.map +0 -1
  95. package/dist/tools/git-archive.js +0 -466
  96. package/dist/tools/git-archive.js.map +0 -1
  97. package/dist/tools/git-auto-monitor.d.ts +0 -180
  98. package/dist/tools/git-auto-monitor.d.ts.map +0 -1
  99. package/dist/tools/git-auto-monitor.js +0 -522
  100. package/dist/tools/git-auto-monitor.js.map +0 -1
  101. package/dist/tools/git-backup.d.ts +0 -105
  102. package/dist/tools/git-backup.d.ts.map +0 -1
  103. package/dist/tools/git-backup.js +0 -414
  104. package/dist/tools/git-backup.js.map +0 -1
  105. package/dist/tools/git-branches.d.ts +0 -183
  106. package/dist/tools/git-branches.d.ts.map +0 -1
  107. package/dist/tools/git-branches.js +0 -507
  108. package/dist/tools/git-branches.js.map +0 -1
  109. package/dist/tools/git-config.d.ts +0 -119
  110. package/dist/tools/git-config.d.ts.map +0 -1
  111. package/dist/tools/git-config.js +0 -449
  112. package/dist/tools/git-config.js.map +0 -1
  113. package/dist/tools/git-files.d.ts +0 -150
  114. package/dist/tools/git-files.d.ts.map +0 -1
  115. package/dist/tools/git-files.js +0 -536
  116. package/dist/tools/git-files.js.map +0 -1
  117. package/dist/tools/git-history.d.ts +0 -253
  118. package/dist/tools/git-history.d.ts.map +0 -1
  119. package/dist/tools/git-history.js +0 -824
  120. package/dist/tools/git-history.js.map +0 -1
  121. package/dist/tools/git-issues.d.ts +0 -164
  122. package/dist/tools/git-issues.d.ts.map +0 -1
  123. package/dist/tools/git-issues.js +0 -349
  124. package/dist/tools/git-issues.js.map +0 -1
  125. package/dist/tools/git-monitor.d.ts +0 -154
  126. package/dist/tools/git-monitor.d.ts.map +0 -1
  127. package/dist/tools/git-monitor.js +0 -531
  128. package/dist/tools/git-monitor.js.map +0 -1
  129. package/dist/tools/git-packages.d.ts +0 -157
  130. package/dist/tools/git-packages.d.ts.map +0 -1
  131. package/dist/tools/git-packages.js +0 -534
  132. package/dist/tools/git-packages.js.map +0 -1
  133. package/dist/tools/git-pulls.d.ts +0 -180
  134. package/dist/tools/git-pulls.d.ts.map +0 -1
  135. package/dist/tools/git-pulls.js +0 -378
  136. package/dist/tools/git-pulls.js.map +0 -1
  137. package/dist/tools/git-release.d.ts +0 -161
  138. package/dist/tools/git-release.d.ts.map +0 -1
  139. package/dist/tools/git-release.js +0 -466
  140. package/dist/tools/git-release.js.map +0 -1
  141. package/dist/tools/git-remote.d.ts +0 -128
  142. package/dist/tools/git-remote.d.ts.map +0 -1
  143. package/dist/tools/git-remote.js +0 -542
  144. package/dist/tools/git-remote.js.map +0 -1
  145. package/dist/tools/git-reset.d.ts +0 -120
  146. package/dist/tools/git-reset.d.ts.map +0 -1
  147. package/dist/tools/git-reset.js +0 -479
  148. package/dist/tools/git-reset.js.map +0 -1
  149. package/dist/tools/git-stash.d.ts +0 -124
  150. package/dist/tools/git-stash.d.ts.map +0 -1
  151. package/dist/tools/git-stash.js +0 -506
  152. package/dist/tools/git-stash.js.map +0 -1
  153. package/dist/tools/git-sync.d.ts +0 -154
  154. package/dist/tools/git-sync.d.ts.map +0 -1
  155. package/dist/tools/git-sync.js +0 -479
  156. package/dist/tools/git-sync.js.map +0 -1
  157. package/dist/tools/git-tags.d.ts +0 -136
  158. package/dist/tools/git-tags.d.ts.map +0 -1
  159. package/dist/tools/git-tags.js +0 -470
  160. package/dist/tools/git-tags.js.map +0 -1
  161. package/dist/tools/git-update.d.ts +0 -224
  162. package/dist/tools/git-update.d.ts.map +0 -1
  163. package/dist/tools/git-update.js +0 -948
  164. package/dist/tools/git-update.js.map +0 -1
  165. package/dist/tools/git-workflow.d.ts +0 -189
  166. package/dist/tools/git-workflow.d.ts.map +0 -1
  167. package/dist/tools/git-workflow.js +0 -551
  168. package/dist/tools/git-workflow.js.map +0 -1
  169. package/dist/utils/credential-manager.d.ts +0 -119
  170. package/dist/utils/credential-manager.d.ts.map +0 -1
  171. package/dist/utils/credential-manager.js +0 -450
  172. package/dist/utils/credential-manager.js.map +0 -1
  173. package/dist/utils/data-merger.d.ts +0 -49
  174. package/dist/utils/data-merger.d.ts.map +0 -1
  175. package/dist/utils/data-merger.js +0 -233
  176. package/dist/utils/data-merger.js.map +0 -1
  177. package/dist/utils/git-command-executor.d.ts +0 -330
  178. package/dist/utils/git-command-executor.d.ts.map +0 -1
  179. package/dist/utils/git-command-executor.js +0 -901
  180. package/dist/utils/git-command-executor.js.map +0 -1
  181. package/dist/utils/logger.d.ts +0 -143
  182. package/dist/utils/logger.d.ts.map +0 -1
  183. package/dist/utils/logger.js +0 -473
  184. package/dist/utils/logger.js.map +0 -1
  185. package/dist/utils/operation-error-handler.d.ts +0 -97
  186. package/dist/utils/operation-error-handler.d.ts.map +0 -1
  187. package/dist/utils/operation-error-handler.js +0 -367
  188. package/dist/utils/operation-error-handler.js.map +0 -1
  189. package/dist/utils/parameter-validator.d.ts +0 -49
  190. package/dist/utils/parameter-validator.d.ts.map +0 -1
  191. package/dist/utils/parameter-validator.js +0 -647
  192. package/dist/utils/parameter-validator.js.map +0 -1
  193. package/dist/utils/repository-checker.d.ts +0 -46
  194. package/dist/utils/repository-checker.d.ts.map +0 -1
  195. package/dist/utils/repository-checker.js +0 -151
  196. package/dist/utils/repository-checker.js.map +0 -1
  197. package/dist/utils/repository-detector.d.ts +0 -128
  198. package/dist/utils/repository-detector.d.ts.map +0 -1
  199. package/dist/utils/repository-detector.js +0 -422
  200. package/dist/utils/repository-detector.js.map +0 -1
  201. package/dist/utils/repository-sync.d.ts +0 -67
  202. package/dist/utils/repository-sync.d.ts.map +0 -1
  203. package/dist/utils/repository-sync.js +0 -344
  204. package/dist/utils/repository-sync.js.map +0 -1
  205. package/dist/utils/response-formatter.d.ts +0 -146
  206. package/dist/utils/response-formatter.d.ts.map +0 -1
  207. package/dist/utils/response-formatter.js +0 -378
  208. package/dist/utils/response-formatter.js.map +0 -1
  209. package/dist/utils/retry.d.ts +0 -12
  210. package/dist/utils/retry.d.ts.map +0 -1
  211. package/dist/utils/retry.js +0 -28
  212. package/dist/utils/retry.js.map +0 -1
  213. package/dist/utils/safety-warnings.d.ts +0 -56
  214. package/dist/utils/safety-warnings.d.ts.map +0 -1
  215. package/dist/utils/safety-warnings.js +0 -330
  216. package/dist/utils/safety-warnings.js.map +0 -1
  217. package/dist/utils/terminal-controller.d.ts +0 -79
  218. package/dist/utils/terminal-controller.d.ts.map +0 -1
  219. package/dist/utils/terminal-controller.js +0 -291
  220. package/dist/utils/terminal-controller.js.map +0 -1
  221. package/dist/utils/user-friendly-formatter.d.ts +0 -45
  222. package/dist/utils/user-friendly-formatter.d.ts.map +0 -1
  223. package/dist/utils/user-friendly-formatter.js +0 -175
  224. package/dist/utils/user-friendly-formatter.js.map +0 -1
@@ -1,291 +0,0 @@
1
- "use strict";
2
- /**
3
- * Terminal Controller
4
- *
5
- * Handles terminal command execution with proper error handling,
6
- * timeout management, and cross-platform compatibility.
7
- */
8
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
9
- if (k2 === undefined) k2 = k;
10
- var desc = Object.getOwnPropertyDescriptor(m, k);
11
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
12
- desc = { enumerable: true, get: function() { return m[k]; } };
13
- }
14
- Object.defineProperty(o, k2, desc);
15
- }) : (function(o, m, k, k2) {
16
- if (k2 === undefined) k2 = k;
17
- o[k2] = m[k];
18
- }));
19
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
20
- Object.defineProperty(o, "default", { enumerable: true, value: v });
21
- }) : function(o, v) {
22
- o["default"] = v;
23
- });
24
- var __importStar = (this && this.__importStar) || (function () {
25
- var ownKeys = function(o) {
26
- ownKeys = Object.getOwnPropertyNames || function (o) {
27
- var ar = [];
28
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
29
- return ar;
30
- };
31
- return ownKeys(o);
32
- };
33
- return function (mod) {
34
- if (mod && mod.__esModule) return mod;
35
- var result = {};
36
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
37
- __setModuleDefault(result, mod);
38
- return result;
39
- };
40
- })();
41
- var __importDefault = (this && this.__importDefault) || function (mod) {
42
- return (mod && mod.__esModule) ? mod : { "default": mod };
43
- };
44
- Object.defineProperty(exports, "__esModule", { value: true });
45
- exports.terminalController = exports.TerminalController = void 0;
46
- const child_process_1 = require("child_process");
47
- const util_1 = require("util");
48
- const path_1 = __importDefault(require("path"));
49
- const execAsync = (0, util_1.promisify)(child_process_1.exec);
50
- class TerminalController {
51
- defaultTimeout = 30000; // 30 seconds
52
- defaultOptions = {
53
- shell: true,
54
- encoding: 'utf8'
55
- };
56
- /**
57
- * Execute command with promise-based interface
58
- */
59
- async executeCommand(command, args = [], options = {}) {
60
- const startTime = Date.now();
61
- const mergedOptions = {
62
- ...this.defaultOptions,
63
- ...options,
64
- timeout: options.timeout || this.defaultTimeout
65
- };
66
- return new Promise((resolve) => {
67
- const child = (0, child_process_1.spawn)(command, args, {
68
- cwd: mergedOptions.cwd,
69
- env: { ...process.env, ...mergedOptions.env },
70
- shell: false
71
- });
72
- let stdout = '';
73
- let stderr = '';
74
- child.stdout?.on('data', (data) => {
75
- stdout += data.toString();
76
- });
77
- child.stderr?.on('data', (data) => {
78
- stderr += data.toString();
79
- });
80
- let finished = false;
81
- const finish = (code) => {
82
- if (finished)
83
- return;
84
- finished = true;
85
- resolve({
86
- success: code === 0,
87
- stdout: stdout.trim(),
88
- stderr: stderr.trim(),
89
- exitCode: code === null ? 1 : code,
90
- executionTime: Date.now() - startTime,
91
- command: `${command} ${args.join(' ')}`
92
- });
93
- };
94
- child.on('close', (code) => finish(code));
95
- child.on('error', (err) => {
96
- stderr += err.message;
97
- finish(1);
98
- });
99
- // Handle timeout
100
- if (mergedOptions.timeout) {
101
- setTimeout(() => {
102
- try {
103
- child.kill('SIGTERM');
104
- }
105
- catch { }
106
- finish(1);
107
- }, mergedOptions.timeout);
108
- }
109
- });
110
- }
111
- /**
112
- * Execute command in specific directory
113
- */
114
- async executeInDirectory(directory, command, args = [], options = {}) {
115
- const resolvedPath = path_1.default.resolve(directory);
116
- return this.executeCommand(command, args, {
117
- ...options,
118
- cwd: resolvedPath
119
- });
120
- }
121
- /**
122
- * Check if command exists in system PATH
123
- */
124
- async commandExists(command) {
125
- try {
126
- const args = process.platform === 'win32' ? [command] : [command];
127
- const cmd = process.platform === 'win32' ? 'where' : 'which';
128
- const result = await this.executeCommand(cmd, args);
129
- return result.success && result.stdout.length > 0;
130
- }
131
- catch {
132
- return false;
133
- }
134
- }
135
- /**
136
- * Get current working directory
137
- */
138
- getCurrentDirectory() {
139
- return process.cwd();
140
- }
141
- /**
142
- * Change working directory for subsequent commands
143
- */
144
- setWorkingDirectory(directory) {
145
- process.chdir(path_1.default.resolve(directory));
146
- }
147
- /**
148
- * Execute multiple commands in sequence
149
- */
150
- async executeSequence(commands, stopOnError = true) {
151
- const results = [];
152
- for (const cmd of commands) {
153
- const result = await this.executeCommand(cmd.command, cmd.args || [], cmd.options || {});
154
- results.push(result);
155
- if (!result.success && stopOnError) {
156
- break;
157
- }
158
- }
159
- return results;
160
- }
161
- /**
162
- * Execute command with real-time output streaming
163
- */
164
- async executeWithStreaming(command, args = [], options = {}) {
165
- const startTime = Date.now();
166
- const fullCommand = `${command} ${args.join(' ')}`;
167
- return new Promise((resolve) => {
168
- const child = (0, child_process_1.spawn)(command, args, {
169
- cwd: options.cwd,
170
- env: { ...process.env, ...options.env },
171
- shell: options.shell !== false
172
- });
173
- let stdout = '';
174
- let stderr = '';
175
- child.stdout?.on('data', (data) => {
176
- const text = data.toString();
177
- stdout += text;
178
- options.onStdout?.(text);
179
- });
180
- child.stderr?.on('data', (data) => {
181
- const text = data.toString();
182
- stderr += text;
183
- options.onStderr?.(text);
184
- });
185
- child.on('close', (code) => {
186
- resolve({
187
- success: code === 0,
188
- stdout: stdout.trim(),
189
- stderr: stderr.trim(),
190
- exitCode: code || 0,
191
- executionTime: Date.now() - startTime,
192
- command: fullCommand
193
- });
194
- });
195
- child.on('error', (error) => {
196
- resolve({
197
- success: false,
198
- stdout: stdout.trim(),
199
- stderr: error.message,
200
- exitCode: 1,
201
- executionTime: Date.now() - startTime,
202
- command: fullCommand
203
- });
204
- });
205
- // Handle timeout
206
- if (options.timeout) {
207
- setTimeout(() => {
208
- child.kill('SIGTERM');
209
- }, options.timeout);
210
- }
211
- });
212
- }
213
- /**
214
- * Search for text in files using grep or findstr
215
- */
216
- async searchInFiles(directory, query, options = {}) {
217
- const isWindows = process.platform === 'win32';
218
- if (isWindows) {
219
- // Use findstr on Windows
220
- const args = ['/S', '/N'];
221
- if (!options.caseSensitive)
222
- args.push('/I');
223
- const filePattern = options.filePattern && options.filePattern !== '*' ? options.filePattern : '*';
224
- // findstr usage: findstr [options] "searchString" filespec
225
- args.push(query);
226
- args.push(filePattern);
227
- const result = await this.executeInDirectory(directory, 'findstr', args);
228
- // findstr returns exit code 1 when no matches are found — treat as success with empty output
229
- if (result.exitCode === 1 && !result.stdout.trim()) {
230
- return {
231
- success: true,
232
- stdout: '',
233
- stderr: '',
234
- exitCode: 0,
235
- executionTime: result.executionTime,
236
- command: result.command
237
- };
238
- }
239
- return result;
240
- }
241
- else {
242
- // Use grep on Unix-like systems
243
- const args = ['-r', '-n'];
244
- if (!options.caseSensitive)
245
- args.push('-i');
246
- if (options.filePattern && options.filePattern !== '*') {
247
- args.push('--include', options.filePattern);
248
- }
249
- args.push(query, '.');
250
- const result = await this.executeInDirectory(directory, 'grep', args);
251
- // grep exit code 1 means no matches — normalize to success with empty output
252
- if (result.exitCode === 1 && !result.stdout.trim()) {
253
- return {
254
- success: true,
255
- stdout: '',
256
- stderr: '',
257
- exitCode: 0,
258
- executionTime: result.executionTime,
259
- command: result.command
260
- };
261
- }
262
- return result;
263
- }
264
- }
265
- /**
266
- * Validate directory exists and is accessible
267
- */
268
- async validateDirectory(directory) {
269
- try {
270
- const fs = await Promise.resolve().then(() => __importStar(require('fs/promises')));
271
- const stats = await fs.stat(directory);
272
- return {
273
- exists: true,
274
- accessible: true,
275
- isDirectory: stats.isDirectory(),
276
- };
277
- }
278
- catch (error) {
279
- return {
280
- exists: false,
281
- accessible: false,
282
- isDirectory: false,
283
- error: error.message
284
- };
285
- }
286
- }
287
- }
288
- exports.TerminalController = TerminalController;
289
- // Export singleton instance
290
- exports.terminalController = new TerminalController();
291
- //# sourceMappingURL=terminal-controller.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"terminal-controller.js","sourceRoot":"","sources":["../../src/utils/terminal-controller.ts"],"names":[],"mappings":"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"}
@@ -1,45 +0,0 @@
1
- /**
2
- * User-Friendly Response Formatter
3
- *
4
- * Converte respostas técnicas em formato JSON para respostas legíveis por humanos.
5
- */
6
- import { ToolResult } from './response-formatter.js';
7
- export declare class UserFriendlyFormatter {
8
- /**
9
- * Formata uma resposta técnica para uma versão amigável
10
- */
11
- static formatResponse(result: ToolResult): string;
12
- /**
13
- * Formata resposta de sucesso
14
- */
15
- private static formatSuccessResponse;
16
- /**
17
- * Formata resposta de erro
18
- */
19
- private static formatErrorResponse;
20
- /**
21
- * Gera texto específico para cada tipo de operação bem-sucedida
22
- */
23
- private static getOperationSpecificSuccess;
24
- /**
25
- * Gera texto de ajuda específico para cada tipo de erro
26
- */
27
- private static getErrorSpecificHelp;
28
- /**
29
- * Resume os dados retornados em formato amigável
30
- */
31
- private static summarizeData;
32
- /**
33
- * Formata um item de dados baseado em seu conteúdo
34
- */
35
- private static formatDataItem;
36
- /**
37
- * Formata um valor para exibição amigável
38
- */
39
- private static formatValue;
40
- /**
41
- * Capitaliza a primeira letra de uma string
42
- */
43
- private static capitalizeFirstLetter;
44
- }
45
- //# sourceMappingURL=user-friendly-formatter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"user-friendly-formatter.d.ts","sourceRoot":"","sources":["../../src/utils/user-friendly-formatter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,qBAAa,qBAAqB;IAChC;;OAEG;WACW,cAAc,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM;IAQxD;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,qBAAqB;IAiBpC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAwBlC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,2BAA2B;IA0B1C;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,oBAAoB;IA6BnC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,aAAa;IAyB5B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,cAAc;IAkB7B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,WAAW;IAW1B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,qBAAqB;CAGrC"}
@@ -1,175 +0,0 @@
1
- "use strict";
2
- /**
3
- * User-Friendly Response Formatter
4
- *
5
- * Converte respostas técnicas em formato JSON para respostas legíveis por humanos.
6
- */
7
- Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.UserFriendlyFormatter = void 0;
9
- class UserFriendlyFormatter {
10
- /**
11
- * Formata uma resposta técnica para uma versão amigável
12
- */
13
- static formatResponse(result) {
14
- if (result.success) {
15
- return this.formatSuccessResponse(result);
16
- }
17
- else {
18
- return this.formatErrorResponse(result);
19
- }
20
- }
21
- /**
22
- * Formata resposta de sucesso
23
- */
24
- static formatSuccessResponse(result) {
25
- const operation = result.metadata?.operation || 'Operação';
26
- let output = `✅ ${this.capitalizeFirstLetter(operation)} concluído com sucesso!\n\n`;
27
- // Adicionar detalhes específicos baseados na operação
28
- if (result.metadata?.operation) {
29
- output += this.getOperationSpecificSuccess(result);
30
- }
31
- // Adicionar resumo dos dados retornados (se houver)
32
- if (result.data) {
33
- output += this.summarizeData(result.data, result.metadata?.operation);
34
- }
35
- return output;
36
- }
37
- /**
38
- * Formata resposta de erro
39
- */
40
- static formatErrorResponse(result) {
41
- const operation = result.metadata?.operation || 'Operação';
42
- let output = `❌ Erro ao executar ${operation}\n\n`;
43
- if (result.error?.message) {
44
- output += `**Problema:** ${result.error.message}\n\n`;
45
- }
46
- if (result.error?.suggestions && result.error.suggestions.length > 0) {
47
- output += "**Soluções possíveis:**\n";
48
- result.error.suggestions.forEach((suggestion, index) => {
49
- output += `${index + 1}. ${suggestion}\n`;
50
- });
51
- output += "\n";
52
- }
53
- // Adicionar detalhes específicos baseados no tipo de erro
54
- if (result.error?.code) {
55
- output += this.getErrorSpecificHelp(result);
56
- }
57
- return output;
58
- }
59
- /**
60
- * Gera texto específico para cada tipo de operação bem-sucedida
61
- */
62
- static getOperationSpecificSuccess(result) {
63
- const operation = result.metadata?.operation;
64
- const data = result.data;
65
- switch (operation) {
66
- case 'sync':
67
- return `📦 Repositório sincronizado com sucesso!\n\n` +
68
- `↓ Pull: Alterações remotas baixadas\n` +
69
- `↑ Push: Alterações locais enviadas\n\n`;
70
- case 'commit':
71
- return `📝 Commit realizado com sucesso!\n\n` +
72
- `${data?.message || 'Alterações salvas localmente'}\n\n`;
73
- case 'list':
74
- const count = Array.isArray(data) ? data.length :
75
- (data?.items?.length || 'Vários');
76
- return `📋 Listagem concluída: ${count} item(s) encontrado(s)\n\n`;
77
- // Adicionar mais casos conforme necessário
78
- default:
79
- return '';
80
- }
81
- }
82
- /**
83
- * Gera texto de ajuda específico para cada tipo de erro
84
- */
85
- static getErrorSpecificHelp(result) {
86
- const code = result.error?.code;
87
- switch (code) {
88
- case 'LOCAL_REPO_MISSING':
89
- return `🔍 **Diagnóstico:** O repositório existe remotamente, mas não está inicializado localmente.\n\n` +
90
- `Para resolver este problema, você pode:\n` +
91
- `1. Inicializar um repositório local: \`git-workflow init\`\n` +
92
- `2. Configurar o remote: \`git remote add origin <url>\`\n` +
93
- `3. Fazer pull: \`git-workflow pull\`\n\n` +
94
- `Ou simplesmente clonar o repositório: \`git clone <url>\`\n\n`;
95
- case 'CONFIGURATION_ERROR':
96
- return `⚙️ **Configuração:** Verifique as variáveis de ambiente para os providers.\n\n` +
97
- `Para GitHub:\n` +
98
- `- GITHUB_TOKEN\n` +
99
- `- GITHUB_USERNAME\n\n` +
100
- `Para Gitea:\n` +
101
- `- GITEA_URL\n` +
102
- `- GITEA_TOKEN\n` +
103
- `- GITEA_USERNAME\n\n`;
104
- // Adicionar mais casos conforme necessário
105
- default:
106
- return '';
107
- }
108
- }
109
- /**
110
- * Resume os dados retornados em formato amigável
111
- */
112
- static summarizeData(data, operation) {
113
- if (!data)
114
- return '';
115
- // Diferentes formatos de resumo baseados no tipo de dado
116
- if (Array.isArray(data)) {
117
- if (data.length === 0)
118
- return "Nenhum item encontrado.\n";
119
- if (data.length <= 5) {
120
- return data.map(item => this.formatDataItem(item)).join('\n') + '\n';
121
- }
122
- else {
123
- return data.slice(0, 5).map(item => this.formatDataItem(item)).join('\n') +
124
- `\n... e mais ${data.length - 5} item(s)\n`;
125
- }
126
- }
127
- if (typeof data === 'object' && data !== null) {
128
- return Object.entries(data)
129
- .filter(([key]) => !key.startsWith('_') && key !== 'metadata')
130
- .map(([key, value]) => `${key}: ${this.formatValue(value)}`)
131
- .join('\n') + '\n';
132
- }
133
- return `${data}\n`;
134
- }
135
- /**
136
- * Formata um item de dados baseado em seu conteúdo
137
- */
138
- static formatDataItem(item) {
139
- if (typeof item === 'string')
140
- return item;
141
- if (typeof item === 'object' && item !== null) {
142
- // Tenta encontrar campos de identificação comuns
143
- const name = item.name || item.title || item.id || item.path;
144
- if (name) {
145
- const description = item.description || item.message || '';
146
- return `- ${name}${description ? `: ${description}` : ''}`;
147
- }
148
- // Fallback para casos onde não há campo de identificação óbvio
149
- return `- ${JSON.stringify(item).substring(0, 100)}${JSON.stringify(item).length > 100 ? '...' : ''}`;
150
- }
151
- return `- ${String(item)}`;
152
- }
153
- /**
154
- * Formata um valor para exibição amigável
155
- */
156
- static formatValue(value) {
157
- if (value === null || value === undefined)
158
- return '';
159
- if (typeof value === 'object') {
160
- if (Array.isArray(value)) {
161
- return value.length > 0 ? `[${value.length} item(s)]` : '[]';
162
- }
163
- return '[objeto]';
164
- }
165
- return String(value);
166
- }
167
- /**
168
- * Capitaliza a primeira letra de uma string
169
- */
170
- static capitalizeFirstLetter(str) {
171
- return str.charAt(0).toUpperCase() + str.slice(1);
172
- }
173
- }
174
- exports.UserFriendlyFormatter = UserFriendlyFormatter;
175
- //# sourceMappingURL=user-friendly-formatter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"user-friendly-formatter.js","sourceRoot":"","sources":["../../src/utils/user-friendly-formatter.ts"],"names":[],"mappings":"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"}