genaicode 0.8.4 → 0.8.5

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 (162) hide show
  1. package/dist/ai-service/anthropic.js +1 -1
  2. package/dist/ai-service/anthropic.js.map +1 -1
  3. package/dist/ai-service/common.d.ts +2 -1
  4. package/dist/ai-service/common.js +1 -2
  5. package/dist/ai-service/common.js.map +1 -1
  6. package/dist/ai-service/openai.d.ts +8 -0
  7. package/dist/ai-service/openai.js +182 -0
  8. package/dist/ai-service/openai.js.map +1 -0
  9. package/dist/ai-service/service-configurations.js +9 -3
  10. package/dist/ai-service/service-configurations.js.map +1 -1
  11. package/dist/cli/cli-options.js +1 -1
  12. package/dist/cli/cli-options.js.map +1 -1
  13. package/dist/cli/service-autodetect.js +1 -1
  14. package/dist/cli/service-autodetect.js.map +1 -1
  15. package/dist/cli/validate-cli-params.js +1 -1
  16. package/dist/cli/validate-cli-params.js.map +1 -1
  17. package/dist/files/find-files.js +5 -2
  18. package/dist/files/find-files.js.map +1 -1
  19. package/dist/files/read-files.d.ts +1 -0
  20. package/dist/files/read-files.js +13 -5
  21. package/dist/files/read-files.js.map +1 -1
  22. package/dist/index.d.ts +1 -0
  23. package/dist/index.js +4 -0
  24. package/dist/index.js.map +1 -1
  25. package/dist/main/codegen-types.d.ts +56 -4
  26. package/dist/main/codegen-utils.js +1 -1
  27. package/dist/main/codegen-utils.js.map +1 -1
  28. package/dist/main/codegen.js +5 -5
  29. package/dist/main/codegen.js.map +1 -1
  30. package/dist/main/common/content-bus-types.d.ts +1 -1
  31. package/dist/main/config-lib.d.ts +7 -1
  32. package/dist/main/config-lib.js +4 -1
  33. package/dist/main/config-lib.js.map +1 -1
  34. package/dist/main/config-schema.d.ts +14 -0
  35. package/dist/main/config-schema.js +145 -0
  36. package/dist/main/config-schema.js.map +1 -0
  37. package/dist/main/config.d.ts +1 -0
  38. package/dist/main/config.js +11 -3
  39. package/dist/main/config.js.map +1 -1
  40. package/dist/main/interactive/select-ai-service.js +1 -1
  41. package/dist/main/interactive/select-ai-service.js.map +1 -1
  42. package/dist/main/plugin-loader.d.ts +18 -3
  43. package/dist/main/plugin-loader.js +155 -48
  44. package/dist/main/plugin-loader.js.map +1 -1
  45. package/dist/main/ui/backend/api-handlers.d.ts +6 -0
  46. package/dist/main/ui/backend/api-handlers.js +5 -0
  47. package/dist/main/ui/backend/api-handlers.js.map +1 -0
  48. package/dist/main/ui/backend/api.d.ts +1 -0
  49. package/dist/main/ui/backend/api.js +6 -313
  50. package/dist/main/ui/backend/api.js.map +1 -1
  51. package/dist/main/ui/backend/endpoints/config-endpoint.d.ts +1 -0
  52. package/dist/main/ui/backend/endpoints/config-endpoint.js +39 -0
  53. package/dist/main/ui/backend/endpoints/config-endpoint.js.map +1 -0
  54. package/dist/main/ui/backend/endpoints/content-endpoint.d.ts +1 -0
  55. package/dist/main/ui/backend/endpoints/content-endpoint.js +14 -0
  56. package/dist/main/ui/backend/endpoints/content-endpoint.js.map +1 -0
  57. package/dist/main/ui/backend/endpoints/edit-message-endpoint.d.ts +1 -0
  58. package/dist/main/ui/backend/endpoints/edit-message-endpoint.js +34 -0
  59. package/dist/main/ui/backend/endpoints/edit-message-endpoint.js.map +1 -0
  60. package/dist/main/ui/backend/endpoints/execute-codegen-endpoint.d.ts +1 -0
  61. package/dist/main/ui/backend/endpoints/execute-codegen-endpoint.js +44 -0
  62. package/dist/main/ui/backend/endpoints/execute-codegen-endpoint.js.map +1 -0
  63. package/dist/main/ui/backend/endpoints/execution-status-endpoint.d.ts +1 -0
  64. package/dist/main/ui/backend/endpoints/execution-status-endpoint.js +37 -0
  65. package/dist/main/ui/backend/endpoints/execution-status-endpoint.js.map +1 -0
  66. package/dist/main/ui/backend/endpoints/generate-content-endpoint.d.ts +1 -0
  67. package/dist/main/ui/backend/endpoints/generate-content-endpoint.js +29 -0
  68. package/dist/main/ui/backend/endpoints/generate-content-endpoint.js.map +1 -0
  69. package/dist/main/ui/backend/endpoints/index.d.ts +11 -0
  70. package/dist/main/ui/backend/endpoints/index.js +12 -0
  71. package/dist/main/ui/backend/endpoints/index.js.map +1 -0
  72. package/dist/main/ui/backend/endpoints/interrupt-execution-endpoint.d.ts +1 -0
  73. package/dist/main/ui/backend/endpoints/interrupt-execution-endpoint.js +14 -0
  74. package/dist/main/ui/backend/endpoints/interrupt-execution-endpoint.js.map +1 -0
  75. package/dist/main/ui/backend/endpoints/iteration-endpoint.d.ts +1 -0
  76. package/dist/main/ui/backend/endpoints/iteration-endpoint.js +16 -0
  77. package/dist/main/ui/backend/endpoints/iteration-endpoint.js.map +1 -0
  78. package/dist/main/ui/backend/endpoints/question-endpoint.d.ts +1 -0
  79. package/dist/main/ui/backend/endpoints/question-endpoint.js +37 -0
  80. package/dist/main/ui/backend/endpoints/question-endpoint.js.map +1 -0
  81. package/dist/main/ui/backend/endpoints/service-configuration-endpoint.d.ts +1 -0
  82. package/dist/main/ui/backend/endpoints/service-configuration-endpoint.js +54 -0
  83. package/dist/main/ui/backend/endpoints/service-configuration-endpoint.js.map +1 -0
  84. package/dist/main/ui/backend/endpoints/usage-endpoint.d.ts +1 -0
  85. package/dist/main/ui/backend/endpoints/usage-endpoint.js +15 -0
  86. package/dist/main/ui/backend/endpoints/usage-endpoint.js.map +1 -0
  87. package/dist/main/ui/common/api-types.d.ts +5 -1
  88. package/dist/main/ui/frontend/assets/index-DY7-_JMu.js +1759 -0
  89. package/dist/main/ui/frontend/index.html +1 -1
  90. package/dist/prompt/ai-service-fallback.js +10 -3
  91. package/dist/prompt/ai-service-fallback.js.map +1 -1
  92. package/dist/prompt/function-calling-validate.d.ts +1 -1
  93. package/dist/prompt/function-calling-validate.js +13 -5
  94. package/dist/prompt/function-calling-validate.js.map +1 -1
  95. package/dist/prompt/function-defs/ask-question.js +80 -39
  96. package/dist/prompt/function-defs/ask-question.js.map +1 -1
  97. package/dist/prompt/limits.js +2 -2
  98. package/dist/prompt/prompt-service.js +2 -1
  99. package/dist/prompt/prompt-service.js.map +1 -1
  100. package/dist/prompt/prompt-service.test-utils.d.ts +1 -1
  101. package/dist/prompt/prompt-service.test-utils.js +1 -1
  102. package/dist/prompt/prompt-service.test-utils.js.map +1 -1
  103. package/dist/prompt/static-prompts.d.ts +2 -1
  104. package/dist/prompt/static-prompts.js +2 -1
  105. package/dist/prompt/static-prompts.js.map +1 -1
  106. package/dist/prompt/steps/step-ask-question/handlers/cancel-code-generation.d.ts +1 -1
  107. package/dist/prompt/steps/step-ask-question/handlers/cancel-code-generation.js +2 -2
  108. package/dist/prompt/steps/step-ask-question/handlers/cancel-code-generation.js.map +1 -1
  109. package/dist/prompt/steps/step-ask-question/handlers/code-generation.js +15 -15
  110. package/dist/prompt/steps/step-ask-question/handlers/code-generation.js.map +1 -1
  111. package/dist/prompt/steps/step-ask-question/handlers/confirm-code-generation.d.ts +1 -1
  112. package/dist/prompt/steps/step-ask-question/handlers/confirm-code-generation.js +3 -3
  113. package/dist/prompt/steps/step-ask-question/handlers/confirm-code-generation.js.map +1 -1
  114. package/dist/prompt/steps/step-ask-question/handlers/context-optimization.d.ts +1 -1
  115. package/dist/prompt/steps/step-ask-question/handlers/context-optimization.js +2 -2
  116. package/dist/prompt/steps/step-ask-question/handlers/context-optimization.js.map +1 -1
  117. package/dist/prompt/steps/step-ask-question/handlers/default-action.d.ts +1 -1
  118. package/dist/prompt/steps/step-ask-question/handlers/default-action.js +2 -2
  119. package/dist/prompt/steps/step-ask-question/handlers/default-action.js.map +1 -1
  120. package/dist/prompt/steps/step-ask-question/handlers/handle-search-code.d.ts +1 -1
  121. package/dist/prompt/steps/step-ask-question/handlers/handle-search-code.js +5 -5
  122. package/dist/prompt/steps/step-ask-question/handlers/handle-search-code.js.map +1 -1
  123. package/dist/prompt/steps/step-ask-question/handlers/handle-send-message-with-image.d.ts +1 -1
  124. package/dist/prompt/steps/step-ask-question/handlers/handle-send-message-with-image.js +4 -4
  125. package/dist/prompt/steps/step-ask-question/handlers/handle-send-message-with-image.js.map +1 -1
  126. package/dist/prompt/steps/step-ask-question/handlers/handle-send-message.d.ts +1 -1
  127. package/dist/prompt/steps/step-ask-question/handlers/handle-send-message.js +3 -3
  128. package/dist/prompt/steps/step-ask-question/handlers/handle-send-message.js.map +1 -1
  129. package/dist/prompt/steps/step-ask-question/handlers/lint.d.ts +1 -1
  130. package/dist/prompt/steps/step-ask-question/handlers/lint.js +4 -4
  131. package/dist/prompt/steps/step-ask-question/handlers/lint.js.map +1 -1
  132. package/dist/prompt/steps/step-ask-question/handlers/remove-files-from-context.d.ts +1 -1
  133. package/dist/prompt/steps/step-ask-question/handlers/remove-files-from-context.js +3 -3
  134. package/dist/prompt/steps/step-ask-question/handlers/remove-files-from-context.js.map +1 -1
  135. package/dist/prompt/steps/step-ask-question/handlers/request-files-content.d.ts +1 -1
  136. package/dist/prompt/steps/step-ask-question/handlers/request-files-content.js +7 -7
  137. package/dist/prompt/steps/step-ask-question/handlers/request-files-content.js.map +1 -1
  138. package/dist/prompt/steps/step-ask-question/handlers/request-permissions.d.ts +1 -1
  139. package/dist/prompt/steps/step-ask-question/handlers/request-permissions.js +4 -4
  140. package/dist/prompt/steps/step-ask-question/handlers/request-permissions.js.map +1 -1
  141. package/dist/prompt/steps/step-ask-question/step-ask-question-types.d.ts +15 -3
  142. package/dist/prompt/steps/step-ask-question/step-ask-question.js +12 -7
  143. package/dist/prompt/steps/step-ask-question/step-ask-question.js.map +1 -1
  144. package/dist/prompt/steps/step-codegen-planning.js +63 -3
  145. package/dist/prompt/steps/step-codegen-planning.js.map +1 -1
  146. package/dist/prompt/steps/step-context-optimization.js +3 -1
  147. package/dist/prompt/steps/step-context-optimization.js.map +1 -1
  148. package/dist/prompt/steps/step-generate-codegen-summary.js +3 -5
  149. package/dist/prompt/steps/step-generate-codegen-summary.js.map +1 -1
  150. package/dist/prompt/steps/step-process-file-updates.js +56 -10
  151. package/dist/prompt/steps/step-process-file-updates.js.map +1 -1
  152. package/dist/prompt/steps/step-summarization.js +2 -0
  153. package/dist/prompt/steps/step-summarization.js.map +1 -1
  154. package/dist/prompt/steps/step-validate-recover.js +5 -5
  155. package/dist/prompt/steps/step-validate-recover.js.map +1 -1
  156. package/dist/prompt/systemprompt.js +4 -0
  157. package/dist/prompt/systemprompt.js.map +1 -1
  158. package/dist/vite-genaicode/vite-genaicode-plugin.d.ts +4 -2
  159. package/dist/vite-genaicode/vite-genaicode-plugin.js +41 -24
  160. package/dist/vite-genaicode/vite-genaicode-plugin.js.map +1 -1
  161. package/package.json +7 -7
  162. package/dist/main/ui/frontend/assets/index-jwSqt8cG.js +0 -1337
@@ -1,13 +1,145 @@
1
1
  import path from 'path';
2
2
  import { registerProfile } from '../project-profiles/index.js';
3
- // Global storage for registered AI services and operations
3
+ // Global storage for registered plugins and their components
4
+ const loadedPlugins = new Map();
4
5
  const registeredAiServices = new Map();
5
6
  const registeredOperations = {};
6
7
  const registeredActionHandlerDescriptions = new Map();
7
8
  const registeredActionHandlers = new Map();
8
9
  const registeredGenerateContentHooks = [];
9
- // Project profile plugin storage
10
+ const registeredPlanningPreHooks = [];
11
+ const registeredPlanningPostHooks = [];
10
12
  const registeredProfilePlugins = [];
13
+ /**
14
+ * Validates a plugin's structure and required fields
15
+ * @throws {Error} If plugin validation fails
16
+ */
17
+ function validatePlugin(plugin) {
18
+ if (!plugin.name) {
19
+ throw new Error('Plugin must have a name');
20
+ }
21
+ // Validate AI services if present
22
+ if (plugin.aiServices) {
23
+ Object.entries(plugin.aiServices).forEach(([name, service]) => {
24
+ if (!service.generateContent || typeof service.generateContent !== 'function') {
25
+ throw new Error(`AI service ${name} must have a generateContent function`);
26
+ }
27
+ if (!service.serviceConfig) {
28
+ throw new Error(`AI service ${name} must have a serviceConfig`);
29
+ }
30
+ });
31
+ }
32
+ // Validate operations if present
33
+ if (plugin.operations) {
34
+ Object.entries(plugin.operations).forEach(([name, operation]) => {
35
+ if (!operation.executor || typeof operation.executor !== 'function') {
36
+ throw new Error(`Operation ${name} must have an executor function`);
37
+ }
38
+ if (!operation.def) {
39
+ throw new Error(`Operation ${name} must have a definition`);
40
+ }
41
+ });
42
+ }
43
+ // Validate action handlers if present
44
+ if (plugin.actionHandlers) {
45
+ Object.entries(plugin.actionHandlers).forEach(([name, { handler, description }]) => {
46
+ if (!handler || typeof handler !== 'function') {
47
+ throw new Error(`Action handler ${name} must have a handler function`);
48
+ }
49
+ if (!description) {
50
+ throw new Error(`Action handler ${name} must have a description`);
51
+ }
52
+ });
53
+ }
54
+ // Validate hooks if present
55
+ if (plugin.generateContentHook && typeof plugin.generateContentHook !== 'function') {
56
+ throw new Error('generateContentHook must be a function');
57
+ }
58
+ if (plugin.planningPreHook && typeof plugin.planningPreHook !== 'function') {
59
+ throw new Error('planningPreHook must be a function');
60
+ }
61
+ if (plugin.planningPostHook && typeof plugin.planningPostHook !== 'function') {
62
+ throw new Error('planningPostHook must be a function');
63
+ }
64
+ // Validate project profiles if present
65
+ if ('profiles' in plugin) {
66
+ const profilePlugin = plugin;
67
+ if (!Array.isArray(profilePlugin.profiles)) {
68
+ throw new Error('Plugin profiles must be an array');
69
+ }
70
+ profilePlugin.profiles.forEach(validateProfile);
71
+ }
72
+ }
73
+ /**
74
+ * Registers a single plugin with validation and idempotency checks
75
+ * @throws {Error} If plugin registration fails
76
+ */
77
+ export async function registerPlugin(plugin, pluginPath) {
78
+ try {
79
+ // Validate plugin structure
80
+ validatePlugin(plugin);
81
+ // Check if plugin is already loaded
82
+ if (loadedPlugins.has(plugin.name)) {
83
+ console.log(`Plugin ${plugin.name} is already loaded, overwriting registration`);
84
+ }
85
+ // Register AI services
86
+ if (plugin.aiServices) {
87
+ Object.entries(plugin.aiServices).forEach(([name, service]) => {
88
+ registeredAiServices.set(`plugin:${name}`, service);
89
+ console.log(`Registered AI service: ${name}`);
90
+ });
91
+ }
92
+ // Register operations
93
+ if (plugin.operations) {
94
+ Object.entries(plugin.operations).forEach(([name, operation]) => {
95
+ registeredOperations[name] = operation;
96
+ console.log(`Registered operation: ${name}`);
97
+ });
98
+ }
99
+ // Register action handlers
100
+ if (plugin.actionHandlers) {
101
+ Object.entries(plugin.actionHandlers).forEach(([name, { handler, description }]) => {
102
+ registeredActionHandlers.set(`plugin:${name}`, handler);
103
+ registeredActionHandlerDescriptions.set(`plugin:${name}`, description);
104
+ console.log(`Registered action handler: ${name}`);
105
+ });
106
+ }
107
+ // Register hooks
108
+ if (plugin.generateContentHook) {
109
+ registeredGenerateContentHooks.push(plugin.generateContentHook);
110
+ console.log('Registered generateContent hook');
111
+ }
112
+ if (plugin.planningPreHook) {
113
+ registeredPlanningPreHooks.push(plugin.planningPreHook);
114
+ console.log('Registered planning pre-hook');
115
+ }
116
+ if (plugin.planningPostHook) {
117
+ registeredPlanningPostHooks.push(plugin.planningPostHook);
118
+ console.log('Registered planning post-hook');
119
+ }
120
+ // Register project profiles
121
+ if ('profiles' in plugin) {
122
+ const profilePlugin = plugin;
123
+ if (profilePlugin.profiles) {
124
+ profilePlugin.profiles.forEach((profile) => {
125
+ registerProfile(profile);
126
+ console.log(`Registered project profile: ${profile.name} (${profile.id})`);
127
+ });
128
+ }
129
+ }
130
+ // Add plugin to loaded plugins registry
131
+ loadedPlugins.set(plugin.name, plugin);
132
+ console.log(`Successfully loaded plugin${pluginPath ? `: ${pluginPath}` : ': ' + plugin.name}`);
133
+ }
134
+ catch (error) {
135
+ const errorMessage = `Failed to register plugin${pluginPath ? `: ${pluginPath}` : ': ' + plugin.name}`;
136
+ console.error(errorMessage, error);
137
+ throw new Error(`${errorMessage}: ${error instanceof Error ? error.message : String(error)}`);
138
+ }
139
+ }
140
+ /**
141
+ * Loads plugins from configuration with idempotency checks
142
+ */
11
143
  export async function loadPlugins(rcConfig) {
12
144
  if (!rcConfig.plugins || rcConfig.plugins.length === 0) {
13
145
  console.log('No plugins specified in the configuration.');
@@ -18,56 +150,16 @@ export async function loadPlugins(rcConfig) {
18
150
  pluginPath = path.isAbsolute(pluginPath) ? pluginPath : path.join(rcConfig.rootDir, pluginPath);
19
151
  console.log('Loading plugin:', pluginPath);
20
152
  const plugin = (await import(pluginPath)).default;
21
- // Handle AI services
22
- if (plugin.aiServices) {
23
- Object.entries(plugin.aiServices).forEach(([name, service]) => {
24
- registeredAiServices.set(`plugin:${name}`, service);
25
- console.log(`Registered AI service: ${name}`);
26
- });
27
- }
28
- // Handle operations
29
- if (plugin.operations) {
30
- Object.entries(plugin.operations).forEach(([name, operation]) => {
31
- registeredOperations[name] = operation;
32
- console.log(`Registered operation: ${name}`);
33
- });
34
- }
35
- // Handle action handlers
36
- if (plugin.actionHandlers) {
37
- Object.entries(plugin.actionHandlers).forEach(([name, { handler, description }]) => {
38
- registeredActionHandlers.set(`plugin:${name}`, handler);
39
- registeredActionHandlerDescriptions.set(`plugin:${name}`, description);
40
- console.log(`Registered action handler: ${name}`);
41
- });
42
- }
43
- // Handle generateContent hooks
44
- if (plugin.generateContentHook) {
45
- registeredGenerateContentHooks.push(plugin.generateContentHook);
46
- console.log('Registered generateContent hook');
47
- }
48
- // Handle project profile plugins
49
- if ('profiles' in plugin) {
50
- const profilePlugin = plugin;
51
- // Register project profiles
52
- if (profilePlugin.profiles) {
53
- profilePlugin.profiles.forEach((profile) => {
54
- // Validate profile
55
- validateProfile(profile);
56
- // Register profile
57
- registerProfile(profile);
58
- console.log(`Registered project profile: ${profile.name} (${profile.id})`);
59
- });
60
- }
61
- }
62
- console.log(`Successfully loaded plugin: ${pluginPath}`);
153
+ await registerPlugin(plugin, pluginPath);
63
154
  }
64
155
  catch (error) {
65
156
  console.error(`Failed to load plugin: ${pluginPath}`, error);
157
+ throw error; // Re-throw to handle the error at a higher level
66
158
  }
67
159
  }
68
160
  }
69
161
  /**
70
- * Validate project profile structure
162
+ * Validates project profile structure
71
163
  */
72
164
  function validateProfile(profile) {
73
165
  if (!profile.id || typeof profile.id !== 'string') {
@@ -107,10 +199,25 @@ export function getRegisteredActionHandlerDescriptions() {
107
199
  export function getRegisteredGenerateContentHooks() {
108
200
  return registeredGenerateContentHooks;
109
201
  }
110
- /**
111
- * Get all registered project profile plugins
112
- */
202
+ export function getRegisteredPlanningPreHooks() {
203
+ return registeredPlanningPreHooks;
204
+ }
205
+ export function getRegisteredPlanningPostHooks() {
206
+ return registeredPlanningPostHooks;
207
+ }
113
208
  export function getRegisteredProfilePlugins() {
114
209
  return registeredProfilePlugins;
115
210
  }
211
+ /**
212
+ * Checks if a plugin is already loaded
213
+ */
214
+ export function isPluginLoaded(pluginName) {
215
+ return loadedPlugins.has(pluginName);
216
+ }
217
+ /**
218
+ * Gets a loaded plugin by name
219
+ */
220
+ export function getLoadedPlugin(pluginName) {
221
+ return loadedPlugins.get(pluginName);
222
+ }
116
223
  //# sourceMappingURL=plugin-loader.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-loader.js","sourceRoot":"","sources":["../../src/main/plugin-loader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin-loader.js","sourceRoot":"","sources":["../../src/main/plugin-loader.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { Router } from 'express';
2
+ import { Service } from './service.js';
3
+ type EndpointHandler = (router: Router, service: Service) => void;
4
+ export declare const handlers: EndpointHandler[];
5
+ export declare function registerEndpoint(handler: EndpointHandler): void;
6
+ export {};
@@ -0,0 +1,5 @@
1
+ export const handlers = [];
2
+ export function registerEndpoint(handler) {
3
+ handlers.push(handler);
4
+ }
5
+ //# sourceMappingURL=api-handlers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api-handlers.js","sourceRoot":"","sources":["../../../../src/main/ui/backend/api-handlers.ts"],"names":[],"mappings":"AAKA,MAAM,CAAC,MAAM,QAAQ,GAAsB,EAAE,CAAC;AAE9C,MAAM,UAAU,gBAAgB,CAAC,OAAwB;IACvD,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AACzB,CAAC"}
@@ -1,2 +1,3 @@
1
1
  import { Service } from './service.js';
2
+ import './endpoints/index.js';
2
3
  export declare function createRouter(service: Service): import("express-serve-static-core").Router;
@@ -1,27 +1,6 @@
1
1
  import express from 'express';
2
- import multer from 'multer';
3
- import { rcConfig as globalRcConfig } from '../../config.js';
4
- import { validateCodegenOptions } from './api-utils.js';
5
- import { getSupportedAiServices } from '../../codegen-utils.js';
6
- const MAX_FILE_SIZE = 5 * 1024 * 1024; // 5MB
7
- const ALLOWED_FILE_TYPES = ['image/jpeg', 'image/png', 'image/gif', 'image/webp'];
8
- const MAX_IMAGES = 5;
9
- const storage = multer.memoryStorage();
10
- const upload = multer({
11
- storage: storage,
12
- fileFilter: (_, file, cb) => {
13
- if (ALLOWED_FILE_TYPES.includes(file.mimetype)) {
14
- cb(null, true);
15
- }
16
- else {
17
- cb(new Error('Invalid file type. Only JPEG, PNG, GIF, and WebP are allowed.'));
18
- }
19
- },
20
- limits: {
21
- fileSize: MAX_FILE_SIZE,
22
- files: MAX_IMAGES,
23
- },
24
- });
2
+ import { handlers } from './api-handlers.js';
3
+ import './endpoints/index.js';
25
4
  export function createRouter(service) {
26
5
  const router = express.Router();
27
6
  // Apply token validation middleware to all routes
@@ -35,296 +14,10 @@ export function createRouter(service) {
35
14
  }
36
15
  next();
37
16
  });
38
- // New endpoint for editing messages
39
- router.post('/edit-message', async (req, res) => {
40
- try {
41
- const { messageId, newContent } = req.body;
42
- // Validate request body
43
- if (!messageId || typeof messageId !== 'string') {
44
- return res.status(400).json({ error: 'Invalid message ID' });
45
- }
46
- if (!newContent || typeof newContent !== 'string') {
47
- return res.status(400).json({ error: 'Invalid message content' });
48
- }
49
- if (newContent.trim().length === 0) {
50
- return res.status(400).json({ error: 'Message content cannot be empty' });
51
- }
52
- // Try to edit the message
53
- const success = await service.editMessage(messageId, newContent);
54
- if (success) {
55
- res.json({ message: 'Message edited successfully' });
56
- }
57
- else {
58
- res.status(404).json({ error: 'Message not found' });
59
- }
60
- }
61
- catch (error) {
62
- console.error('Error editing message:', error);
63
- if (error instanceof Error) {
64
- res.status(400).json({ error: error.message });
65
- }
66
- else {
67
- res.status(500).json({ error: 'An error occurred while editing the message' });
68
- }
69
- }
70
- });
71
- // Execute codegen (handles both regular and multimodal)
72
- router.post('/execute-codegen', upload.array('images', MAX_IMAGES), async (req, res) => {
73
- try {
74
- const prompt = req.body.prompt;
75
- const options = JSON.parse(req.body.options);
76
- const files = req.files;
77
- if (!prompt || typeof prompt !== 'string') {
78
- return res.status(400).json({ error: 'Invalid prompt' });
79
- }
80
- const validationErrors = validateCodegenOptions(options);
81
- if (validationErrors.length > 0) {
82
- return res.status(400).json({ errors: validationErrors });
83
- }
84
- const images = files?.map((file) => ({
85
- buffer: file.buffer,
86
- mimetype: file.mimetype,
87
- originalname: file.originalname,
88
- }));
89
- const result = await service.executeCodegen(prompt, options, images);
90
- res.json({ result });
91
- }
92
- catch (error) {
93
- console.error('Error executing codegen:', error);
94
- if (error instanceof multer.MulterError) {
95
- if (error.code === 'LIMIT_FILE_SIZE') {
96
- return res.status(400).json({ error: 'File size exceeds the 5MB limit' });
97
- }
98
- if (error.code === 'LIMIT_FILE_COUNT') {
99
- return res.status(400).json({ error: `Maximum of ${MAX_IMAGES} images allowed` });
100
- }
101
- }
102
- res.status(500).json({ error: 'An error occurred while executing codegen' });
103
- }
104
- });
105
- // New endpoint for direct content generation
106
- router.post('/generate-content', async (req, res) => {
107
- try {
108
- const { prompt, temperature, cheap, options } = req.body;
109
- // Validate required parameters
110
- if (!prompt || typeof prompt !== 'string') {
111
- return res.status(400).json({ error: 'Invalid prompt: must be a string' });
112
- }
113
- if (typeof temperature !== 'number' || temperature < 0 || temperature > 2) {
114
- return res.status(400).json({ error: 'Invalid temperature: must be a number between 0 and 2' });
115
- }
116
- if (typeof cheap !== 'boolean') {
117
- return res.status(400).json({ error: 'Invalid cheap parameter: must be a boolean' });
118
- }
119
- // Validate CodegenOptions
120
- const validationErrors = validateCodegenOptions(options);
121
- if (validationErrors.length > 0) {
122
- return res.status(400).json({ errors: validationErrors });
123
- }
124
- const result = await service.generateContent(prompt, temperature, cheap, options);
125
- res.json({ result });
126
- }
127
- catch (error) {
128
- console.error('Error generating content:', error);
129
- if (error instanceof Error) {
130
- res.status(500).json({ error: `An error occurred while generating content: ${error.message}` });
131
- }
132
- else {
133
- res.status(500).json({ error: 'An unknown error occurred while generating content' });
134
- }
135
- }
136
- });
137
- router.get('/content', async (_, res) => {
138
- try {
139
- const content = service.getContent();
140
- res.json({ content });
141
- }
142
- catch (error) {
143
- console.error('Error getting content:', error);
144
- res.status(500).json({ error: 'An error occurred while getting content' });
145
- }
146
- });
147
- // Get execution status
148
- router.get('/execution-status', async (_, res) => {
149
- try {
150
- const status = await service.getExecutionStatus();
151
- res.json({ status });
152
- }
153
- catch (error) {
154
- console.error('Error getting execution status:', error);
155
- res.status(500).json({ error: 'An error occurred while getting execution status' });
156
- }
157
- });
158
- // Interrupt execution
159
- router.post('/interrupt-execution', async (_, res) => {
160
- try {
161
- await service.interruptExecution();
162
- res.json({ message: 'Execution interrupted successfully' });
163
- }
164
- catch (error) {
165
- console.error('Error interrupting execution:', error);
166
- res.status(500).json({ error: 'An error occurred while interrupting execution' });
167
- }
168
- });
169
- // Pause execution
170
- router.post('/pause-execution', async (_, res) => {
171
- try {
172
- await service.pauseExecution();
173
- res.json({ message: 'Execution paused successfully' });
174
- }
175
- catch (error) {
176
- console.error('Error pausing execution:', error);
177
- res.status(500).json({ error: 'An error occurred while pausing execution' });
178
- }
179
- });
180
- // Resume execution
181
- router.post('/resume-execution', async (_, res) => {
182
- try {
183
- await service.resumeExecution();
184
- res.json({ message: 'Execution resumed successfully' });
185
- }
186
- catch (error) {
187
- console.error('Error resuming execution:', error);
188
- res.status(500).json({ error: 'An error occurred while resuming execution' });
189
- }
190
- });
191
- // Get current question
192
- router.get('/current-question', async (_, res) => {
193
- try {
194
- const question = await service.getCurrentQuestion();
195
- res.json({ question });
196
- }
197
- catch (error) {
198
- console.error('Error getting current question:', error);
199
- res.status(500).json({ error: 'An error occurred while getting current question' });
200
- }
201
- });
202
- // Answer question
203
- router.post('/answer-question', async (req, res) => {
204
- try {
205
- const { questionId, answer, confirmed, options } = req.body;
206
- if (!questionId || typeof answer !== 'string' || typeof questionId !== 'string') {
207
- return res.status(400).json({ error: 'Invalid question ID or answer' });
208
- }
209
- if (options) {
210
- const validationErrors = validateCodegenOptions(options);
211
- if (validationErrors.length > 0) {
212
- return res.status(400).json({ errors: validationErrors });
213
- }
214
- }
215
- await service.answerQuestion(questionId, answer, confirmed, options);
216
- res.json({ message: 'Question answered successfully' });
217
- }
218
- catch (error) {
219
- console.error('Error answering question:', error);
220
- res.status(500).json({ error: 'An error occurred while answering question' });
221
- }
222
- });
223
- // Get total cost of prompts in the current session
224
- router.get('/usage', async (_, res) => {
225
- try {
226
- const usageMetrics = await service.getUsageMetrics();
227
- res.json({ usageMetrics });
228
- }
229
- catch (error) {
230
- console.error('Error getting total cost:', error);
231
- res.status(500).json({ error: 'An error occurred while getting total cost' });
232
- }
233
- });
234
- // Get default CodegenOptions
235
- router.get('/default-codegen-options', async (_, res) => {
236
- try {
237
- const defaultOptions = service.getCodegenOptions();
238
- res.json({ options: defaultOptions });
239
- }
240
- catch (error) {
241
- console.error('Error getting default codegen options:', error);
242
- res.status(500).json({ error: 'An error occurred while getting default codegen options' });
243
- }
244
- });
245
- // Get rcConfig settings
246
- router.get('/rcconfig', async (_, res) => {
247
- try {
248
- const rcConfigSettings = globalRcConfig;
249
- res.json({ rcConfig: rcConfigSettings });
250
- }
251
- catch (error) {
252
- console.error('Error getting rcConfig settings:', error);
253
- res.status(500).json({ error: 'An error occurred while getting rcConfig settings' });
254
- }
255
- });
256
- // New endpoint to delete an iteration
257
- router.delete('/delete-iteration/:iterationId', async (req, res) => {
258
- try {
259
- const { iterationId } = req.params;
260
- await service.deleteIteration(iterationId);
261
- res.json({ message: 'Iteration deleted successfully' });
262
- }
263
- catch (error) {
264
- console.error('Error deleting iteration:', error);
265
- res.status(500).json({ error: 'An error occurred while deleting the iteration' });
266
- }
267
- });
268
- // New endpoint to fetch available AI services
269
- router.get('/available-ai-services', async (_, res) => {
270
- try {
271
- const availableServices = getSupportedAiServices();
272
- res.json({ services: availableServices });
273
- }
274
- catch (error) {
275
- console.error('Error fetching available AI services:', error);
276
- res.status(500).json({ error: 'An error occurred while fetching available AI services' });
277
- }
278
- });
279
- // Get service configurations
280
- router.get('/service-configurations', async (_, res) => {
281
- try {
282
- const configurations = service.getServiceConfigurations();
283
- res.json({ configurations });
284
- }
285
- catch (error) {
286
- console.error('Error getting service configurations:', error);
287
- res.status(500).json({ error: 'An error occurred while getting service configurations' });
288
- }
289
- });
290
- // Update service configuration
291
- router.post('/service-configuration', async (req, res) => {
292
- try {
293
- const { serviceType, config } = req.body;
294
- // Validate service type
295
- if (!serviceType || typeof serviceType !== 'string') {
296
- return res.status(400).json({ error: 'Invalid service type' });
297
- }
298
- // Validate that the service type is supported
299
- const supportedServices = getSupportedAiServices();
300
- if (!supportedServices.includes(serviceType)) {
301
- return res.status(400).json({ error: 'Unsupported service type' });
302
- }
303
- // Validate config object
304
- if (!config || typeof config !== 'object') {
305
- return res.status(400).json({ error: 'Invalid configuration object' });
306
- }
307
- // Validate API key if provided
308
- if (config.apiKey !== undefined && typeof config.apiKey !== 'string') {
309
- return res.status(400).json({ error: 'Invalid API key format' });
310
- }
311
- // Validate model overrides if provided
312
- if (config.modelOverrides) {
313
- if (config.modelOverrides.default !== undefined && typeof config.modelOverrides.default !== 'string') {
314
- return res.status(400).json({ error: 'Invalid default model override' });
315
- }
316
- if (config.modelOverrides.cheap !== undefined && typeof config.modelOverrides.cheap !== 'string') {
317
- return res.status(400).json({ error: 'Invalid cheap model override' });
318
- }
319
- }
320
- service.updateServiceConfiguration({ serviceType: serviceType, config });
321
- res.json({ message: 'Service configuration updated successfully' });
322
- }
323
- catch (error) {
324
- console.error('Error updating service configuration:', error);
325
- res.status(500).json({ error: 'An error occurred while updating service configuration' });
326
- }
327
- });
17
+ // Register all endpoints
18
+ for (const handler of handlers) {
19
+ handler(router, service);
20
+ }
328
21
  return router;
329
22
  }
330
23
  //# sourceMappingURL=api.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../../../../src/main/ui/backend/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../../../src/main/ui/backend/api.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAE9B,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,sBAAsB,CAAC;AAE9B,MAAM,UAAU,YAAY,CAAC,OAAgB;IAC3C,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAEhC,kDAAkD;IAClD,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QAC5B,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1D,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,mBAAmB,EAAE,CAAC,CAAC;QAC9D,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;YAClC,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC;QAC1D,CAAC;QACD,IAAI,EAAE,CAAC;IACT,CAAC,CAAC,CAAC;IAEH,yBAAyB;IACzB,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC3B,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}