solver-sdk 1.8.1 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (131) hide show
  1. package/dist/cjs/api/projects-api.js +4 -6
  2. package/dist/cjs/api/projects-api.js.map +1 -1
  3. package/dist/cjs/{code-solver-sdk.js → code-solver-sdk-v2.js} +220 -271
  4. package/dist/cjs/code-solver-sdk-v2.js.map +1 -0
  5. package/dist/cjs/constants/websocket-events.constants.js +37 -1
  6. package/dist/cjs/constants/websocket-events.constants.js.map +1 -1
  7. package/dist/cjs/constants/websocket-namespaces.constants.js +20 -0
  8. package/dist/cjs/constants/websocket-namespaces.constants.js.map +1 -0
  9. package/dist/cjs/index.js +24 -49
  10. package/dist/cjs/index.js.map +1 -1
  11. package/dist/cjs/interfaces/websocket/callbacks.interfaces.js +3 -0
  12. package/dist/cjs/interfaces/websocket/callbacks.interfaces.js.map +1 -0
  13. package/dist/cjs/interfaces/websocket/client-options.interfaces.js +3 -0
  14. package/dist/cjs/interfaces/websocket/client-options.interfaces.js.map +1 -0
  15. package/dist/cjs/interfaces/websocket/events.interfaces.js +3 -0
  16. package/dist/cjs/interfaces/websocket/events.interfaces.js.map +1 -0
  17. package/dist/cjs/interfaces/websocket/stats.interfaces.js +3 -0
  18. package/dist/cjs/interfaces/websocket/stats.interfaces.js.map +1 -0
  19. package/dist/cjs/utils/code-solver-websocket-client.js +382 -1503
  20. package/dist/cjs/utils/code-solver-websocket-client.js.map +1 -1
  21. package/dist/cjs/utils/connection-state-manager.js +133 -0
  22. package/dist/cjs/utils/connection-state-manager.js.map +1 -0
  23. package/dist/cjs/utils/logger.js +106 -0
  24. package/dist/cjs/utils/logger.js.map +1 -0
  25. package/dist/cjs/utils/ping-pong-manager.js +306 -0
  26. package/dist/cjs/utils/ping-pong-manager.js.map +1 -0
  27. package/dist/cjs/utils/session-manager.js +114 -0
  28. package/dist/cjs/utils/session-manager.js.map +1 -0
  29. package/dist/cjs/ws/base-ws-client.js +286 -0
  30. package/dist/cjs/ws/base-ws-client.js.map +1 -0
  31. package/dist/cjs/ws/dependencies-ws-client.js +11 -0
  32. package/dist/cjs/ws/dependencies-ws-client.js.map +1 -0
  33. package/dist/cjs/ws/diagnostics-service.js +170 -0
  34. package/dist/cjs/ws/diagnostics-service.js.map +1 -0
  35. package/dist/cjs/ws/filesystem-ws-client.js +315 -0
  36. package/dist/cjs/ws/filesystem-ws-client.js.map +1 -0
  37. package/dist/cjs/ws/indexing-ws-client.js +223 -0
  38. package/dist/cjs/ws/indexing-ws-client.js.map +1 -0
  39. package/dist/cjs/ws/notifications-ws-client.js +12 -0
  40. package/dist/cjs/ws/notifications-ws-client.js.map +1 -0
  41. package/dist/cjs/ws/reasoning-ws-client.js +330 -0
  42. package/dist/cjs/ws/reasoning-ws-client.js.map +1 -0
  43. package/dist/esm/api/projects-api.js +4 -6
  44. package/dist/esm/api/projects-api.js.map +1 -1
  45. package/dist/esm/{code-solver-sdk.js → code-solver-sdk-v2.js} +220 -271
  46. package/dist/esm/code-solver-sdk-v2.js.map +1 -0
  47. package/dist/esm/constants/websocket-events.constants.js +36 -0
  48. package/dist/esm/constants/websocket-events.constants.js.map +1 -1
  49. package/dist/esm/constants/websocket-namespaces.constants.js +17 -0
  50. package/dist/esm/constants/websocket-namespaces.constants.js.map +1 -0
  51. package/dist/esm/index.js +22 -97
  52. package/dist/esm/index.js.map +1 -1
  53. package/dist/esm/interfaces/websocket/callbacks.interfaces.js +2 -0
  54. package/dist/esm/interfaces/websocket/callbacks.interfaces.js.map +1 -0
  55. package/dist/esm/interfaces/websocket/client-options.interfaces.js +2 -0
  56. package/dist/esm/interfaces/websocket/client-options.interfaces.js.map +1 -0
  57. package/dist/esm/interfaces/websocket/events.interfaces.js +2 -0
  58. package/dist/esm/interfaces/websocket/events.interfaces.js.map +1 -0
  59. package/dist/esm/interfaces/websocket/stats.interfaces.js +2 -0
  60. package/dist/esm/interfaces/websocket/stats.interfaces.js.map +1 -0
  61. package/dist/esm/utils/code-solver-websocket-client.js +381 -1503
  62. package/dist/esm/utils/code-solver-websocket-client.js.map +1 -1
  63. package/dist/esm/utils/connection-state-manager.js +129 -0
  64. package/dist/esm/utils/connection-state-manager.js.map +1 -0
  65. package/dist/esm/utils/logger.js +101 -0
  66. package/dist/esm/utils/logger.js.map +1 -0
  67. package/dist/esm/utils/ping-pong-manager.js +302 -0
  68. package/dist/esm/utils/ping-pong-manager.js.map +1 -0
  69. package/dist/esm/utils/session-manager.js +109 -0
  70. package/dist/esm/utils/session-manager.js.map +1 -0
  71. package/dist/esm/ws/base-ws-client.js +282 -0
  72. package/dist/esm/ws/base-ws-client.js.map +1 -0
  73. package/dist/esm/ws/dependencies-ws-client.js +7 -0
  74. package/dist/esm/ws/dependencies-ws-client.js.map +1 -0
  75. package/dist/esm/ws/diagnostics-service.js +166 -0
  76. package/dist/esm/ws/diagnostics-service.js.map +1 -0
  77. package/dist/esm/ws/filesystem-ws-client.js +311 -0
  78. package/dist/esm/ws/filesystem-ws-client.js.map +1 -0
  79. package/dist/esm/ws/indexing-ws-client.js +219 -0
  80. package/dist/esm/ws/indexing-ws-client.js.map +1 -0
  81. package/dist/esm/ws/notifications-ws-client.js +8 -0
  82. package/dist/esm/ws/notifications-ws-client.js.map +1 -0
  83. package/dist/esm/ws/reasoning-ws-client.js +326 -0
  84. package/dist/esm/ws/reasoning-ws-client.js.map +1 -0
  85. package/dist/types/api/projects-api.d.ts.map +1 -1
  86. package/dist/types/{code-solver-sdk.d.ts → code-solver-sdk-v2.d.ts} +82 -85
  87. package/dist/types/code-solver-sdk-v2.d.ts.map +1 -0
  88. package/dist/types/constants/websocket-events.constants.d.ts +33 -0
  89. package/dist/types/constants/websocket-events.constants.d.ts.map +1 -1
  90. package/dist/types/constants/websocket-namespaces.constants.d.ts +16 -0
  91. package/dist/types/constants/websocket-namespaces.constants.d.ts.map +1 -0
  92. package/dist/types/index.d.ts +20 -90
  93. package/dist/types/index.d.ts.map +1 -1
  94. package/dist/types/interfaces/websocket/callbacks.interfaces.d.ts +30 -0
  95. package/dist/types/interfaces/websocket/callbacks.interfaces.d.ts.map +1 -0
  96. package/dist/types/interfaces/websocket/client-options.interfaces.d.ts +51 -0
  97. package/dist/types/interfaces/websocket/client-options.interfaces.d.ts.map +1 -0
  98. package/dist/types/interfaces/websocket/events.interfaces.d.ts +165 -0
  99. package/dist/types/interfaces/websocket/events.interfaces.d.ts.map +1 -0
  100. package/dist/types/interfaces/websocket/stats.interfaces.d.ts +72 -0
  101. package/dist/types/interfaces/websocket/stats.interfaces.d.ts.map +1 -0
  102. package/dist/types/utils/code-solver-websocket-client.d.ts +70 -616
  103. package/dist/types/utils/code-solver-websocket-client.d.ts.map +1 -1
  104. package/dist/types/utils/connection-state-manager.d.ts +94 -0
  105. package/dist/types/utils/connection-state-manager.d.ts.map +1 -0
  106. package/dist/types/utils/logger.d.ts +62 -0
  107. package/dist/types/utils/logger.d.ts.map +1 -0
  108. package/dist/types/utils/ping-pong-manager.d.ts +118 -0
  109. package/dist/types/utils/ping-pong-manager.d.ts.map +1 -0
  110. package/dist/types/utils/session-manager.d.ts +98 -0
  111. package/dist/types/utils/session-manager.d.ts.map +1 -0
  112. package/dist/types/ws/base-ws-client.d.ts +119 -0
  113. package/dist/types/ws/base-ws-client.d.ts.map +1 -0
  114. package/dist/types/ws/dependencies-ws-client.d.ts +6 -0
  115. package/dist/types/ws/dependencies-ws-client.d.ts.map +1 -0
  116. package/dist/types/ws/diagnostics-service.d.ts +93 -0
  117. package/dist/types/ws/diagnostics-service.d.ts.map +1 -0
  118. package/dist/types/ws/filesystem-ws-client.d.ts +203 -0
  119. package/dist/types/ws/filesystem-ws-client.d.ts.map +1 -0
  120. package/dist/types/ws/indexing-ws-client.d.ts +78 -0
  121. package/dist/types/ws/indexing-ws-client.d.ts.map +1 -0
  122. package/dist/types/ws/notifications-ws-client.d.ts +5 -0
  123. package/dist/types/ws/notifications-ws-client.d.ts.map +1 -0
  124. package/dist/types/ws/reasoning-ws-client.d.ts +87 -0
  125. package/dist/types/ws/reasoning-ws-client.d.ts.map +1 -0
  126. package/docs/AUTHENTICATION.md +31 -127
  127. package/docs/WEBSOCKET.md +51 -211
  128. package/package.json +1 -1
  129. package/dist/cjs/code-solver-sdk.js.map +0 -1
  130. package/dist/esm/code-solver-sdk.js.map +0 -1
  131. package/dist/types/code-solver-sdk.d.ts.map +0 -1
@@ -0,0 +1,315 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FileSystemWsClient = void 0;
4
+ const base_ws_client_1 = require("./base-ws-client");
5
+ const websocket_namespaces_constants_1 = require("../constants/websocket-namespaces.constants");
6
+ const websocket_events_constants_1 = require("../constants/websocket-events.constants");
7
+ const uuid_1 = require("uuid");
8
+ /**
9
+ * Клиент WebSocket для работы с файловой системой
10
+ */
11
+ class FileSystemWsClient extends base_ws_client_1.BaseWebSocketClient {
12
+ /**
13
+ * Создает новый клиент для работы с файловой системой
14
+ * @param baseURL Базовый URL API
15
+ * @param options Опции клиента
16
+ */
17
+ constructor(baseURL, options = {}) {
18
+ super(websocket_namespaces_constants_1.WebSocketNamespace.FILESYSTEM, baseURL, {
19
+ enableAutoPing: true,
20
+ pingInterval: 25000,
21
+ reconnectStrategy: 'exponential',
22
+ retryDelay: 1000,
23
+ maxRetryDelay: 30000
24
+ });
25
+ this.sessionId = null;
26
+ this.projectId = null;
27
+ this.pingInterval = 25000; // 25 секунд по умолчанию
28
+ this.pingTimer = null;
29
+ this.SDK_VERSION = '1.0.0';
30
+ // Устанавливаем обработчики
31
+ this.onReadFile = options.onReadFile || (() => Promise.reject('Чтение файлов не реализовано'));
32
+ this.onListFiles = options.onListFiles || (() => Promise.reject('Получение списка файлов не реализовано'));
33
+ this.onWatchStart = options.onWatchStart || (() => Promise.reject('Отслеживание файлов не реализовано'));
34
+ }
35
+ /**
36
+ * Подключение к серверу и инициализация сессии
37
+ * @param params Параметры подключения (может содержать projectId или другие параметры)
38
+ * @returns Promise<boolean> Успешность подключения
39
+ */
40
+ async connect(params = {}) {
41
+ // Если передан projectId, сохраняем его
42
+ if (params.projectId) {
43
+ this.projectId = params.projectId;
44
+ }
45
+ // Проверяем, есть ли у нас projectId
46
+ if (!this.projectId) {
47
+ this.logger.error('Не указан projectId для подключения');
48
+ return false;
49
+ }
50
+ // Подключаемся с базовыми параметрами
51
+ const connected = await super.connect(params);
52
+ if (!connected) {
53
+ return false;
54
+ }
55
+ try {
56
+ // Инициализируем сессию
57
+ const response = await this.emitWithAck(websocket_events_constants_1.WebSocketEvents.INIT, {
58
+ projectId: this.projectId,
59
+ clientVersion: this.SDK_VERSION,
60
+ capabilities: ['text', 'watch']
61
+ });
62
+ if (response && response.payload) {
63
+ this.sessionId = response.payload.sessionId;
64
+ this.pingInterval = response.payload.pingInterval || 25000;
65
+ // Настраиваем обработчики событий
66
+ this.setupHandlers();
67
+ return true;
68
+ }
69
+ else {
70
+ this.logger.error('Ошибка инициализации сессии: Пустой ответ');
71
+ return false;
72
+ }
73
+ }
74
+ catch (error) {
75
+ this.logger.error(`Ошибка инициализации сессии: ${error instanceof Error ? error.message : String(error)}`);
76
+ return false;
77
+ }
78
+ }
79
+ /**
80
+ * Подключение к проекту - удобный метод для использования в приложении
81
+ * @param projectId ID проекта
82
+ * @returns Promise<boolean> Успешность подключения
83
+ */
84
+ async connectToProject(projectId) {
85
+ this.projectId = projectId;
86
+ return this.connect({ projectId });
87
+ }
88
+ /**
89
+ * Настройка обработчиков событий
90
+ */
91
+ setupHandlers() {
92
+ // Обработчик запроса на чтение файла
93
+ this.on(websocket_events_constants_1.WebSocketEvents.READ_FILE, async (request) => {
94
+ try {
95
+ const content = await this.onReadFile(request.payload.path);
96
+ this.send(websocket_events_constants_1.WebSocketEvents.READ_FILE_RESPONSE, {
97
+ requestId: request.requestId,
98
+ projectId: request.projectId,
99
+ payload: { content }
100
+ });
101
+ }
102
+ catch (error) {
103
+ this.send(websocket_events_constants_1.WebSocketEvents.ERROR, {
104
+ requestId: request.requestId,
105
+ error: {
106
+ code: 'FILE_READ_ERROR',
107
+ message: error instanceof Error ? error.message : String(error)
108
+ }
109
+ });
110
+ }
111
+ });
112
+ // Обработчик запроса на получение списка файлов
113
+ this.on(websocket_events_constants_1.WebSocketEvents.LIST_FILES, async (request) => {
114
+ try {
115
+ const files = await this.onListFiles(request.payload.directory, request.payload.options);
116
+ this.send(websocket_events_constants_1.WebSocketEvents.LIST_FILES_RESPONSE, {
117
+ requestId: request.requestId,
118
+ projectId: request.projectId,
119
+ payload: {
120
+ files,
121
+ directory: request.payload.directory
122
+ }
123
+ });
124
+ }
125
+ catch (error) {
126
+ this.send(websocket_events_constants_1.WebSocketEvents.ERROR, {
127
+ requestId: request.requestId,
128
+ error: {
129
+ code: 'LIST_FILES_ERROR',
130
+ message: error instanceof Error ? error.message : String(error)
131
+ }
132
+ });
133
+ }
134
+ });
135
+ // Обработчик запроса на отслеживание файлов
136
+ this.on(websocket_events_constants_1.WebSocketEvents.WATCH_START, async (request) => {
137
+ try {
138
+ const success = await this.onWatchStart(request.payload.patterns);
139
+ this.send(websocket_events_constants_1.WebSocketEvents.WATCH_CONFIRM, {
140
+ requestId: request.requestId,
141
+ projectId: request.projectId,
142
+ payload: {
143
+ success,
144
+ patterns: request.payload.patterns
145
+ }
146
+ });
147
+ }
148
+ catch (error) {
149
+ this.send(websocket_events_constants_1.WebSocketEvents.ERROR, {
150
+ requestId: request.requestId,
151
+ error: {
152
+ code: 'WATCH_ERROR',
153
+ message: error instanceof Error ? error.message : String(error)
154
+ }
155
+ });
156
+ }
157
+ });
158
+ // Обработчик ping
159
+ this.on(websocket_events_constants_1.WebSocketEvents.PING, (data) => {
160
+ this.send(websocket_events_constants_1.WebSocketEvents.PONG, {
161
+ requestId: data.requestId || (0, uuid_1.v4)(),
162
+ timestamp: Date.now()
163
+ });
164
+ });
165
+ }
166
+ /**
167
+ * Уведомляет сервер об изменении файла
168
+ * @param path Путь к файлу
169
+ * @param changeType Тип изменения
170
+ */
171
+ notifyFileChanged(path, changeType = 'modified') {
172
+ if (!this.isConnected() || !this.projectId) {
173
+ return false;
174
+ }
175
+ return this.send(websocket_events_constants_1.WebSocketEvents.FILE_CHANGED, {
176
+ requestId: (0, uuid_1.v4)(),
177
+ projectId: this.projectId,
178
+ payload: {
179
+ path,
180
+ changeType,
181
+ timestamp: Date.now()
182
+ }
183
+ });
184
+ }
185
+ }
186
+ exports.FileSystemWsClient = FileSystemWsClient;
187
+ /**
188
+ * Пример использования клиента файловой системы в VS Code расширении:
189
+ *
190
+ * ```typescript
191
+ * import * as vscode from 'vscode';
192
+ * import { FileSystemWsClient } from 'solver-sdk';
193
+ *
194
+ * export function activate(context: vscode.ExtensionContext) {
195
+ * // Создание клиента файловой системы
196
+ * const fsClient = new FileSystemWsClient('wss://your-backend-url.com', {
197
+ * // Обработчик чтения файла
198
+ * onReadFile: async (path) => {
199
+ * try {
200
+ * const uri = vscode.Uri.file(path);
201
+ * const content = await vscode.workspace.fs.readFile(uri);
202
+ * return new TextDecoder().decode(content);
203
+ * } catch (error) {
204
+ * throw new Error(`Ошибка чтения файла: ${error.message}`);
205
+ * }
206
+ * },
207
+ *
208
+ * // Обработчик получения списка файлов
209
+ * onListFiles: async (directory, options) => {
210
+ * try {
211
+ * // Получаем корневую директорию рабочего пространства
212
+ * const rootPath = vscode.workspace.workspaceFolders?.[0]?.uri.fsPath;
213
+ * if (!rootPath) throw new Error('Не найдено рабочее пространство');
214
+ *
215
+ * // Формируем паттерн для поиска файлов
216
+ * const pattern = new vscode.RelativePattern(
217
+ * rootPath,
218
+ * options?.includePatterns?.[0] || '**'
219
+ * );
220
+ *
221
+ * // Находим файлы по паттерну
222
+ * const files = await vscode.workspace.findFiles(pattern,
223
+ * options?.excludePatterns?.join('|')
224
+ * );
225
+ *
226
+ * // Преобразуем результаты в нужный формат
227
+ * return files.map(uri => {
228
+ * const relativePath = vscode.workspace.asRelativePath(uri);
229
+ * const stats = fs.statSync(uri.fsPath);
230
+ *
231
+ * return {
232
+ * path: uri.fsPath,
233
+ * relativePath,
234
+ * extension: uri.fsPath.split('.').pop() || '',
235
+ * size: stats.size,
236
+ * isDirectory: stats.isDirectory()
237
+ * };
238
+ * });
239
+ * } catch (error) {
240
+ * throw new Error(`Ошибка получения списка файлов: ${error.message}`);
241
+ * }
242
+ * },
243
+ *
244
+ * // Обработчик отслеживания файлов
245
+ * onWatchStart: async (patterns) => {
246
+ * try {
247
+ * // Создаем наблюдателей за файлами
248
+ * const watchers = patterns.map(pattern => {
249
+ * const watcher = vscode.workspace.createFileSystemWatcher(
250
+ * new vscode.RelativePattern(
251
+ * vscode.workspace.workspaceFolders?.[0]?.uri.fsPath || '',
252
+ * pattern
253
+ * )
254
+ * );
255
+ *
256
+ * // Обработчик изменения файла
257
+ * watcher.onDidChange(uri => {
258
+ * const relativePath = vscode.workspace.asRelativePath(uri);
259
+ * fsClient.notifyFileChanged(relativePath, 'modified');
260
+ * });
261
+ *
262
+ * // Обработчик создания файла
263
+ * watcher.onDidCreate(uri => {
264
+ * const relativePath = vscode.workspace.asRelativePath(uri);
265
+ * fsClient.notifyFileChanged(relativePath, 'created');
266
+ * });
267
+ *
268
+ * // Обработчик удаления файла
269
+ * watcher.onDidDelete(uri => {
270
+ * const relativePath = vscode.workspace.asRelativePath(uri);
271
+ * fsClient.notifyFileChanged(relativePath, 'deleted');
272
+ * });
273
+ *
274
+ * return watcher;
275
+ * });
276
+ *
277
+ * // Добавляем наблюдателей в контекст расширения для правильной очистки
278
+ * watchers.forEach(watcher => {
279
+ * context.subscriptions.push(watcher);
280
+ * });
281
+ *
282
+ * return true;
283
+ * } catch (error) {
284
+ * console.error('Ошибка при настройке отслеживания файлов:', error);
285
+ * return false;
286
+ * }
287
+ * }
288
+ * });
289
+ *
290
+ * // Подключаемся к проекту
291
+ * vscode.commands.registerCommand('extension.connectToProject', async () => {
292
+ * // Запрашиваем ID проекта у пользователя
293
+ * const projectId = await vscode.window.showInputBox({
294
+ * prompt: 'Введите ID проекта для подключения'
295
+ * });
296
+ *
297
+ * if (!projectId) return;
298
+ *
299
+ * try {
300
+ * // Устанавливаем соединение
301
+ * const connected = await fsClient.connectToProject(projectId);
302
+ *
303
+ * if (connected) {
304
+ * vscode.window.showInformationMessage(`Успешное подключение к проекту ${projectId}`);
305
+ * } else {
306
+ * vscode.window.showErrorMessage('Ошибка подключения к проекту');
307
+ * }
308
+ * } catch (error) {
309
+ * vscode.window.showErrorMessage(`Ошибка: ${error.message}`);
310
+ * }
311
+ * });
312
+ * }
313
+ * ```
314
+ */
315
+ //# sourceMappingURL=filesystem-ws-client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filesystem-ws-client.js","sourceRoot":"","sources":["../../../src/ws/filesystem-ws-client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,223 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.IndexingWebSocketClient = void 0;
4
+ const websocket_namespaces_constants_js_1 = require("../constants/websocket-namespaces.constants.js");
5
+ const websocket_events_constants_js_1 = require("../constants/websocket-events.constants.js");
6
+ const base_ws_client_js_1 = require("./base-ws-client.js");
7
+ const reasoning_auth_helper_js_1 = require("../utils/reasoning-auth-helper.js");
8
+ /**
9
+ * WebSocket клиент для пространства имен индексации
10
+ */
11
+ class IndexingWebSocketClient extends base_ws_client_js_1.BaseWebSocketClient {
12
+ /**
13
+ * Создает новый WebSocket клиент для индексации
14
+ * @param {string} baseURL Базовый URL API
15
+ * @param {IndexingWebSocketClientOptions} options Опции клиента
16
+ */
17
+ constructor(baseURL, options = {}) {
18
+ super(websocket_namespaces_constants_js_1.WebSocketNamespace.INDEXING, baseURL, options);
19
+ /** ID активного проекта */
20
+ this.activeProjectId = null;
21
+ // Инициализируем ID проекта, если указан
22
+ this.activeProjectId = options.projectId || null;
23
+ }
24
+ /**
25
+ * Подключается к серверу WebSocket
26
+ * @param {boolean} autoJoin Автоматически присоединиться к проекту
27
+ * @returns {Promise<boolean>} Успешность подключения
28
+ */
29
+ async connectToIndexing(autoJoin = true) {
30
+ try {
31
+ this.logger.info('Подключение к пространству имен индексации', { projectId: this.activeProjectId });
32
+ // Получаем параметры для подключения с авторизацией
33
+ const authParams = (0, reasoning_auth_helper_js_1.createIndexingConnectionParams)(this.options.apiKey, this.activeProjectId, this.sessionManager.getSessionToken(this.namespace));
34
+ // Подключаемся к пространству имен индексации с передачей authToken
35
+ const connected = await this.connect(authParams);
36
+ if (!connected) {
37
+ this.logger.error('Не удалось подключиться к пространству имен индексации');
38
+ return false;
39
+ }
40
+ // Аутентифицируемся с увеличенным таймаутом
41
+ try {
42
+ const authResult = await this.emitWithAck(websocket_events_constants_js_1.WebSocketEvents.AUTHENTICATE, {
43
+ token: this.options.apiKey,
44
+ projectId: this.activeProjectId
45
+ }, 10000);
46
+ this.logger.debug('Результат аутентификации в namespace индексации', authResult);
47
+ // Если сервер вернул токен сессии, сохраняем его
48
+ if (authResult.sessionToken) {
49
+ this.sessionManager.saveSessionToken(this.namespace, authResult.sessionToken);
50
+ }
51
+ }
52
+ catch (error) {
53
+ this.logger.error('Ошибка аутентификации в namespace индексации', error);
54
+ return false;
55
+ }
56
+ // Если у нас есть ID проекта и включено автоматическое присоединение
57
+ if (this.activeProjectId && autoJoin) {
58
+ return this.joinProject(this.activeProjectId);
59
+ }
60
+ return true;
61
+ }
62
+ catch (error) {
63
+ this.logger.error('Ошибка подключения к пространству имен индексации', error);
64
+ return false;
65
+ }
66
+ }
67
+ /**
68
+ * Присоединяется к проекту
69
+ * @param {string} projectId ID проекта
70
+ * @returns {Promise<boolean>} Успешность операции
71
+ */
72
+ async joinProject(projectId) {
73
+ if (!projectId) {
74
+ this.logger.error('Попытка присоединиться к пустому projectId');
75
+ return false;
76
+ }
77
+ // Сохраняем ID проекта
78
+ this.activeProjectId = projectId;
79
+ try {
80
+ // Отправляем запрос на присоединение к проекту
81
+ const joinResult = await this.emitWithAck(websocket_events_constants_js_1.WebSocketEvents.JOIN_PROJECT, {
82
+ projectId,
83
+ token: this.options.apiKey
84
+ }, 10000);
85
+ this.logger.debug(`Результат присоединения к проекту ${projectId}`, joinResult);
86
+ if (joinResult.success !== true) {
87
+ this.logger.error(`Ошибка при присоединении к проекту: ${joinResult.error || 'Неизвестная ошибка'}`);
88
+ return false;
89
+ }
90
+ return true;
91
+ }
92
+ catch (error) {
93
+ this.logger.error(`Ошибка при присоединении к проекту ${projectId}`, error);
94
+ return false;
95
+ }
96
+ }
97
+ /**
98
+ * Запускает процесс индексации проекта
99
+ * @param {string} [projectId] ID проекта (если не указан, используется текущий проект)
100
+ * @returns {Promise<boolean>} Успешность операции
101
+ */
102
+ async startIndexing(projectId) {
103
+ const targetId = projectId || this.activeProjectId;
104
+ if (!targetId) {
105
+ this.logger.error('Попытка запустить индексацию без указания ID проекта');
106
+ return false;
107
+ }
108
+ try {
109
+ // Отправляем запрос на запуск индексации
110
+ const startResult = await this.emitWithAck(websocket_events_constants_js_1.WebSocketEvents.START_INDEXING, {
111
+ projectId: targetId,
112
+ token: this.options.apiKey
113
+ }, 10000);
114
+ this.logger.debug(`Результат запуска индексации проекта ${targetId}`, startResult);
115
+ if (startResult.success !== true) {
116
+ this.logger.error(`Ошибка при запуске индексации: ${startResult.error || 'Неизвестная ошибка'}`);
117
+ return false;
118
+ }
119
+ return true;
120
+ }
121
+ catch (error) {
122
+ this.logger.error(`Ошибка при запуске индексации проекта ${targetId}`, error);
123
+ return false;
124
+ }
125
+ }
126
+ /**
127
+ * Останавливает процесс индексации проекта
128
+ * @param {string} [projectId] ID проекта (если не указан, используется текущий проект)
129
+ * @returns {Promise<boolean>} Успешность операции
130
+ */
131
+ async stopIndexing(projectId) {
132
+ const targetId = projectId || this.activeProjectId;
133
+ if (!targetId) {
134
+ this.logger.error('Попытка остановить индексацию без указания ID проекта');
135
+ return false;
136
+ }
137
+ try {
138
+ // Отправляем запрос на остановку индексации
139
+ const stopResult = await this.emitWithAck(websocket_events_constants_js_1.WebSocketEvents.STOP_INDEXING, {
140
+ projectId: targetId,
141
+ token: this.options.apiKey
142
+ }, 10000);
143
+ this.logger.debug(`Результат остановки индексации проекта ${targetId}`, stopResult);
144
+ if (stopResult.success !== true) {
145
+ this.logger.error(`Ошибка при остановке индексации: ${stopResult.error || 'Неизвестная ошибка'}`);
146
+ return false;
147
+ }
148
+ return true;
149
+ }
150
+ catch (error) {
151
+ this.logger.error(`Ошибка при остановке индексации проекта ${targetId}`, error);
152
+ return false;
153
+ }
154
+ }
155
+ /**
156
+ * Получает статус индексации проекта
157
+ * @param {string} [projectId] ID проекта (если не указан, используется текущий проект)
158
+ * @returns {Promise<any>} Статус индексации проекта
159
+ */
160
+ async getIndexingStatus(projectId) {
161
+ const targetId = projectId || this.activeProjectId;
162
+ if (!targetId) {
163
+ throw new Error('Не указан ID проекта для получения статуса индексации');
164
+ }
165
+ try {
166
+ // Отправляем запрос на получение статуса индексации
167
+ const statusResult = await this.emitWithAck(websocket_events_constants_js_1.WebSocketEvents.GET_INDEXING_STATUS, {
168
+ projectId: targetId,
169
+ token: this.options.apiKey
170
+ }, 10000);
171
+ this.logger.debug(`Получен статус индексации проекта ${targetId}`, statusResult);
172
+ return statusResult;
173
+ }
174
+ catch (error) {
175
+ this.logger.error(`Ошибка при получении статуса индексации проекта ${targetId}`, error);
176
+ throw error;
177
+ }
178
+ }
179
+ /**
180
+ * Устанавливает обработчик для события завершения индексации
181
+ * @param {Function} handler Обработчик события
182
+ */
183
+ onIndexingComplete(handler) {
184
+ this.on('indexing_complete', handler);
185
+ }
186
+ /**
187
+ * Устанавливает обработчик для события индексации файла
188
+ * @param {Function} handler Обработчик события
189
+ */
190
+ onFileIndexed(handler) {
191
+ this.on('file_indexed', handler);
192
+ }
193
+ /**
194
+ * Устанавливает обработчик для события ошибки индексации
195
+ * @param {Function} handler Обработчик события
196
+ */
197
+ onIndexingError(handler) {
198
+ this.on('indexing_error', handler);
199
+ }
200
+ /**
201
+ * Получает текущий ID активного проекта
202
+ * @returns {string | null} ID активного проекта или null
203
+ */
204
+ getActiveProjectId() {
205
+ return this.activeProjectId;
206
+ }
207
+ /**
208
+ * Устанавливает ID активного проекта
209
+ * @param {string} projectId ID проекта
210
+ * @returns {boolean} Успешность установки
211
+ */
212
+ setActiveProjectId(projectId) {
213
+ if (!projectId) {
214
+ this.logger.error('Попытка установить пустой projectId');
215
+ return false;
216
+ }
217
+ this.activeProjectId = projectId;
218
+ this.logger.debug(`Установлен активный projectId: ${projectId}`);
219
+ return true;
220
+ }
221
+ }
222
+ exports.IndexingWebSocketClient = IndexingWebSocketClient;
223
+ //# sourceMappingURL=indexing-ws-client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"indexing-ws-client.js","sourceRoot":"","sources":["../../../src/ws/indexing-ws-client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NotificationsWsClient = void 0;
4
+ const base_ws_client_1 = require("./base-ws-client");
5
+ const websocket_namespaces_constants_js_1 = require("../constants/websocket-namespaces.constants.js");
6
+ class NotificationsWsClient extends base_ws_client_1.BaseWebSocketClient {
7
+ constructor(baseURL, options = {}) {
8
+ super(websocket_namespaces_constants_js_1.WebSocketNamespace.DEFAULT, baseURL, options);
9
+ }
10
+ }
11
+ exports.NotificationsWsClient = NotificationsWsClient;
12
+ //# sourceMappingURL=notifications-ws-client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"notifications-ws-client.js","sourceRoot":"","sources":["../../../src/ws/notifications-ws-client.ts"],"names":[],"mappings":";;;AAAA,qDAAuD;AACvD,sGAAoF;AAEpF,MAAa,qBAAsB,SAAQ,oCAAmB;IAC5D,YAAY,OAAe,EAAE,OAAO,GAAG,EAAE;QACvC,KAAK,CAAC,sDAAkB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACtD,CAAC;CAEF;AALD,sDAKC"}