solver-sdk 2.8.0 → 3.1.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.
- package/README.md +200 -368
- package/dist/cjs/api/chat-api/index.js +23 -49
- package/dist/cjs/api/chat-api/index.js.map +1 -1
- package/dist/cjs/api/chat-api/interfaces.js +1 -0
- package/dist/cjs/api/chat-api/interfaces.js.map +1 -1
- package/dist/cjs/api/context-api.js +6 -1
- package/dist/cjs/api/context-api.js.map +1 -1
- package/dist/cjs/api/models-api.js +43 -60
- package/dist/cjs/api/models-api.js.map +1 -1
- package/dist/cjs/api/projects-api.js +63 -293
- package/dist/cjs/api/projects-api.js.map +1 -1
- package/dist/cjs/api/search-api.js +131 -8
- package/dist/cjs/api/search-api.js.map +1 -1
- package/dist/cjs/code-solver-sdk.js +68 -322
- package/dist/cjs/code-solver-sdk.js.map +1 -1
- package/dist/cjs/index.js +3 -19
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/utils/logger.js +4 -4
- package/dist/cjs/utils/logger.js.map +1 -1
- package/dist/esm/api/chat-api/index.js +22 -48
- package/dist/esm/api/chat-api/index.js.map +1 -1
- package/dist/esm/api/chat-api/interfaces.js +1 -0
- package/dist/esm/api/chat-api/interfaces.js.map +1 -1
- package/dist/esm/api/context-api.js +6 -1
- package/dist/esm/api/context-api.js.map +1 -1
- package/dist/esm/api/models-api.js +43 -60
- package/dist/esm/api/models-api.js.map +1 -1
- package/dist/esm/api/projects-api.js +63 -293
- package/dist/esm/api/projects-api.js.map +1 -1
- package/dist/esm/api/search-api.js +131 -8
- package/dist/esm/api/search-api.js.map +1 -1
- package/dist/esm/code-solver-sdk.js +68 -322
- package/dist/esm/code-solver-sdk.js.map +1 -1
- package/dist/esm/index.js +2 -18
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/utils/logger.js +3 -3
- package/dist/esm/utils/logger.js.map +1 -1
- package/dist/types/api/chat-api/index.d.ts +1 -13
- package/dist/types/api/chat-api/index.d.ts.map +1 -1
- package/dist/types/api/chat-api/interfaces.d.ts +6 -54
- package/dist/types/api/chat-api/interfaces.d.ts.map +1 -1
- package/dist/types/api/chat-api/models.d.ts +3 -26
- package/dist/types/api/chat-api/models.d.ts.map +1 -1
- package/dist/types/api/context-api.d.ts.map +1 -1
- package/dist/types/api/models-api.d.ts +31 -62
- package/dist/types/api/models-api.d.ts.map +1 -1
- package/dist/types/api/projects-api.d.ts +47 -126
- package/dist/types/api/projects-api.d.ts.map +1 -1
- package/dist/types/api/search-api.d.ts +147 -6
- package/dist/types/api/search-api.d.ts.map +1 -1
- package/dist/types/code-solver-sdk.d.ts +36 -86
- package/dist/types/code-solver-sdk.d.ts.map +1 -1
- package/dist/types/index.d.ts +1 -14
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/interfaces/sdk-options.d.ts +18 -66
- package/dist/types/interfaces/sdk-options.d.ts.map +1 -1
- package/dist/types/utils/logger.d.ts +3 -3
- package/dist/types/utils/logger.d.ts.map +1 -1
- package/docs/README.md +53 -37
- package/docs/VSCODE_INTEGRATION.md +208 -371
- package/docs/indexing/INDEXING.md +658 -335
- package/package.json +26 -23
- package/dist/cjs/api/agents-api.js +0 -94
- package/dist/cjs/api/agents-api.js.map +0 -1
- package/dist/cjs/api/chat-api/websocket-helpers.js +0 -211
- package/dist/cjs/api/chat-api/websocket-helpers.js.map +0 -1
- package/dist/cjs/api/dependencies-api.js +0 -286
- package/dist/cjs/api/dependencies-api.js.map +0 -1
- package/dist/cjs/constants/websocket-events.constants.js +0 -170
- package/dist/cjs/constants/websocket-events.constants.js.map +0 -1
- package/dist/cjs/constants/websocket-namespaces.constants.js +0 -22
- package/dist/cjs/constants/websocket-namespaces.constants.js.map +0 -1
- package/dist/cjs/interfaces/websocket/callbacks.interfaces.js +0 -3
- package/dist/cjs/interfaces/websocket/callbacks.interfaces.js.map +0 -1
- package/dist/cjs/interfaces/websocket/client-options.interfaces.js +0 -3
- package/dist/cjs/interfaces/websocket/client-options.interfaces.js.map +0 -1
- package/dist/cjs/interfaces/websocket/events.interfaces.js +0 -3
- package/dist/cjs/interfaces/websocket/events.interfaces.js.map +0 -1
- package/dist/cjs/interfaces/websocket/vscode-command.interfaces.js +0 -42
- package/dist/cjs/interfaces/websocket/vscode-command.interfaces.js.map +0 -1
- package/dist/cjs/simple-indexing-client.js +0 -138
- package/dist/cjs/simple-indexing-client.js.map +0 -1
- package/dist/cjs/utils/code-solver-websocket-client.js +0 -497
- package/dist/cjs/utils/code-solver-websocket-client.js.map +0 -1
- package/dist/cjs/utils/connection-state-manager.js +0 -133
- package/dist/cjs/utils/connection-state-manager.js.map +0 -1
- package/dist/cjs/utils/indexing-websocket-client.js +0 -107
- package/dist/cjs/utils/indexing-websocket-client.js.map +0 -1
- package/dist/cjs/utils/session-manager.js +0 -114
- package/dist/cjs/utils/session-manager.js.map +0 -1
- package/dist/cjs/utils/simple-connection-monitor.js +0 -52
- package/dist/cjs/utils/simple-connection-monitor.js.map +0 -1
- package/dist/cjs/utils/websocket-client.js +0 -638
- package/dist/cjs/utils/websocket-client.js.map +0 -1
- package/dist/cjs/ws/base-ws-client.js +0 -280
- package/dist/cjs/ws/base-ws-client.js.map +0 -1
- package/dist/cjs/ws/dependencies-ws-client.js +0 -11
- package/dist/cjs/ws/dependencies-ws-client.js.map +0 -1
- package/dist/cjs/ws/file-editing-ws-client.js +0 -162
- package/dist/cjs/ws/file-editing-ws-client.js.map +0 -1
- package/dist/cjs/ws/filesystem-ws-client.js +0 -305
- package/dist/cjs/ws/filesystem-ws-client.js.map +0 -1
- package/dist/cjs/ws/indexing-ws-client.js +0 -275
- package/dist/cjs/ws/indexing-ws-client.js.map +0 -1
- package/dist/cjs/ws/notifications-ws-client.js +0 -12
- package/dist/cjs/ws/notifications-ws-client.js.map +0 -1
- package/dist/esm/api/agents-api.js +0 -90
- package/dist/esm/api/agents-api.js.map +0 -1
- package/dist/esm/api/chat-api/websocket-helpers.js +0 -205
- package/dist/esm/api/chat-api/websocket-helpers.js.map +0 -1
- package/dist/esm/api/dependencies-api.js +0 -282
- package/dist/esm/api/dependencies-api.js.map +0 -1
- package/dist/esm/constants/websocket-events.constants.js +0 -167
- package/dist/esm/constants/websocket-events.constants.js.map +0 -1
- package/dist/esm/constants/websocket-namespaces.constants.js +0 -19
- package/dist/esm/constants/websocket-namespaces.constants.js.map +0 -1
- package/dist/esm/interfaces/websocket/callbacks.interfaces.js +0 -2
- package/dist/esm/interfaces/websocket/callbacks.interfaces.js.map +0 -1
- package/dist/esm/interfaces/websocket/client-options.interfaces.js +0 -2
- package/dist/esm/interfaces/websocket/client-options.interfaces.js.map +0 -1
- package/dist/esm/interfaces/websocket/events.interfaces.js +0 -2
- package/dist/esm/interfaces/websocket/events.interfaces.js.map +0 -1
- package/dist/esm/interfaces/websocket/vscode-command.interfaces.js +0 -39
- package/dist/esm/interfaces/websocket/vscode-command.interfaces.js.map +0 -1
- package/dist/esm/simple-indexing-client.js +0 -134
- package/dist/esm/simple-indexing-client.js.map +0 -1
- package/dist/esm/utils/code-solver-websocket-client.js +0 -492
- package/dist/esm/utils/code-solver-websocket-client.js.map +0 -1
- package/dist/esm/utils/connection-state-manager.js +0 -129
- package/dist/esm/utils/connection-state-manager.js.map +0 -1
- package/dist/esm/utils/indexing-websocket-client.js +0 -103
- package/dist/esm/utils/indexing-websocket-client.js.map +0 -1
- package/dist/esm/utils/session-manager.js +0 -109
- package/dist/esm/utils/session-manager.js.map +0 -1
- package/dist/esm/utils/simple-connection-monitor.js +0 -48
- package/dist/esm/utils/simple-connection-monitor.js.map +0 -1
- package/dist/esm/utils/websocket-client.js +0 -634
- package/dist/esm/utils/websocket-client.js.map +0 -1
- package/dist/esm/ws/base-ws-client.js +0 -276
- package/dist/esm/ws/base-ws-client.js.map +0 -1
- package/dist/esm/ws/dependencies-ws-client.js +0 -7
- package/dist/esm/ws/dependencies-ws-client.js.map +0 -1
- package/dist/esm/ws/file-editing-ws-client.js +0 -158
- package/dist/esm/ws/file-editing-ws-client.js.map +0 -1
- package/dist/esm/ws/filesystem-ws-client.js +0 -301
- package/dist/esm/ws/filesystem-ws-client.js.map +0 -1
- package/dist/esm/ws/indexing-ws-client.js +0 -271
- package/dist/esm/ws/indexing-ws-client.js.map +0 -1
- package/dist/esm/ws/notifications-ws-client.js +0 -8
- package/dist/esm/ws/notifications-ws-client.js.map +0 -1
- package/dist/types/api/agents-api.d.ts +0 -141
- package/dist/types/api/agents-api.d.ts.map +0 -1
- package/dist/types/api/chat-api/websocket-helpers.d.ts +0 -40
- package/dist/types/api/chat-api/websocket-helpers.d.ts.map +0 -1
- package/dist/types/api/dependencies-api.d.ts +0 -109
- package/dist/types/api/dependencies-api.d.ts.map +0 -1
- package/dist/types/constants/websocket-events.constants.d.ts +0 -144
- package/dist/types/constants/websocket-events.constants.d.ts.map +0 -1
- package/dist/types/constants/websocket-namespaces.constants.d.ts +0 -17
- package/dist/types/constants/websocket-namespaces.constants.d.ts.map +0 -1
- package/dist/types/interfaces/websocket/callbacks.interfaces.d.ts +0 -30
- package/dist/types/interfaces/websocket/callbacks.interfaces.d.ts.map +0 -1
- package/dist/types/interfaces/websocket/client-options.interfaces.d.ts +0 -51
- package/dist/types/interfaces/websocket/client-options.interfaces.d.ts.map +0 -1
- package/dist/types/interfaces/websocket/events.interfaces.d.ts +0 -165
- package/dist/types/interfaces/websocket/events.interfaces.d.ts.map +0 -1
- package/dist/types/interfaces/websocket/vscode-command.interfaces.d.ts +0 -56
- package/dist/types/interfaces/websocket/vscode-command.interfaces.d.ts.map +0 -1
- package/dist/types/simple-indexing-client.d.ts +0 -66
- package/dist/types/simple-indexing-client.d.ts.map +0 -1
- package/dist/types/utils/code-solver-websocket-client.d.ts +0 -144
- package/dist/types/utils/code-solver-websocket-client.d.ts.map +0 -1
- package/dist/types/utils/connection-state-manager.d.ts +0 -94
- package/dist/types/utils/connection-state-manager.d.ts.map +0 -1
- package/dist/types/utils/indexing-websocket-client.d.ts +0 -123
- package/dist/types/utils/indexing-websocket-client.d.ts.map +0 -1
- package/dist/types/utils/session-manager.d.ts +0 -98
- package/dist/types/utils/session-manager.d.ts.map +0 -1
- package/dist/types/utils/simple-connection-monitor.d.ts +0 -26
- package/dist/types/utils/simple-connection-monitor.d.ts.map +0 -1
- package/dist/types/utils/websocket-client.d.ts +0 -233
- package/dist/types/utils/websocket-client.d.ts.map +0 -1
- package/dist/types/ws/base-ws-client.d.ts +0 -119
- package/dist/types/ws/base-ws-client.d.ts.map +0 -1
- package/dist/types/ws/dependencies-ws-client.d.ts +0 -6
- package/dist/types/ws/dependencies-ws-client.d.ts.map +0 -1
- package/dist/types/ws/file-editing-ws-client.d.ts +0 -85
- package/dist/types/ws/file-editing-ws-client.d.ts.map +0 -1
- package/dist/types/ws/filesystem-ws-client.d.ts +0 -201
- package/dist/types/ws/filesystem-ws-client.d.ts.map +0 -1
- package/dist/types/ws/indexing-ws-client.d.ts +0 -94
- package/dist/types/ws/indexing-ws-client.d.ts.map +0 -1
- package/dist/types/ws/notifications-ws-client.d.ts +0 -5
- package/dist/types/ws/notifications-ws-client.d.ts.map +0 -1
- package/docs/ARCHITECTURE.md +0 -268
- package/docs/QUICK_START.md +0 -126
- package/docs/WEBSOCKET.md +0 -472
|
@@ -1,138 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SimpleIndexingClient = void 0;
|
|
4
|
-
const socket_io_client_1 = require("socket.io-client");
|
|
5
|
-
class SimpleIndexingClient {
|
|
6
|
-
constructor(baseURL, apiKey) {
|
|
7
|
-
this.baseURL = baseURL;
|
|
8
|
-
this.apiKey = apiKey;
|
|
9
|
-
}
|
|
10
|
-
/**
|
|
11
|
-
* Подключается к WebSocket серверу
|
|
12
|
-
*/
|
|
13
|
-
async connect() {
|
|
14
|
-
return new Promise((resolve, reject) => {
|
|
15
|
-
this.socket = (0, socket_io_client_1.io)(`${this.baseURL}/simple-indexing`, {
|
|
16
|
-
auth: { apiKey: this.apiKey },
|
|
17
|
-
transports: ['websocket'],
|
|
18
|
-
});
|
|
19
|
-
this.socket.on('connect', () => {
|
|
20
|
-
console.log('✅ Подключен к серверу индексации');
|
|
21
|
-
resolve();
|
|
22
|
-
});
|
|
23
|
-
this.socket.on('connect_error', (error) => {
|
|
24
|
-
console.error('❌ Ошибка подключения:', error);
|
|
25
|
-
reject(error);
|
|
26
|
-
});
|
|
27
|
-
this.socket.on('connected', (data) => {
|
|
28
|
-
console.log('📡 Сервер подтвердил подключение:', data.message);
|
|
29
|
-
});
|
|
30
|
-
});
|
|
31
|
-
}
|
|
32
|
-
/**
|
|
33
|
-
* Отключается от сервера
|
|
34
|
-
*/
|
|
35
|
-
disconnect() {
|
|
36
|
-
if (this.socket) {
|
|
37
|
-
this.socket.disconnect();
|
|
38
|
-
this.socket = undefined;
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
/**
|
|
42
|
-
* Запускает индексацию проекта
|
|
43
|
-
*/
|
|
44
|
-
async indexProject(options) {
|
|
45
|
-
const response = await fetch(`${this.baseURL}/api/v1/indexing/project`, {
|
|
46
|
-
method: 'POST',
|
|
47
|
-
headers: {
|
|
48
|
-
'Content-Type': 'application/json',
|
|
49
|
-
...(this.apiKey && { 'Authorization': `Bearer ${this.apiKey}` }),
|
|
50
|
-
},
|
|
51
|
-
body: JSON.stringify(options),
|
|
52
|
-
});
|
|
53
|
-
const result = await response.json();
|
|
54
|
-
if (!result.success) {
|
|
55
|
-
throw new Error(result.error || 'Ошибка запуска индексации');
|
|
56
|
-
}
|
|
57
|
-
this.currentProjectId = result.projectId;
|
|
58
|
-
return { projectId: result.projectId };
|
|
59
|
-
}
|
|
60
|
-
/**
|
|
61
|
-
* Подписывается на события индексации проекта
|
|
62
|
-
*/
|
|
63
|
-
subscribeToProject(projectId, events) {
|
|
64
|
-
if (!this.socket) {
|
|
65
|
-
throw new Error('WebSocket не подключен. Вызовите connect() сначала.');
|
|
66
|
-
}
|
|
67
|
-
// Присоединяемся к комнате проекта
|
|
68
|
-
this.socket.emit('join_project', { projectId });
|
|
69
|
-
// Настраиваем обработчики событий
|
|
70
|
-
this.socket.on('indexing_progress', (data) => {
|
|
71
|
-
if (data.projectId === projectId && events.onProgress) {
|
|
72
|
-
events.onProgress(data);
|
|
73
|
-
}
|
|
74
|
-
});
|
|
75
|
-
this.socket.on('file_indexed', (data) => {
|
|
76
|
-
if (events.onFileIndexed) {
|
|
77
|
-
events.onFileIndexed(data);
|
|
78
|
-
}
|
|
79
|
-
});
|
|
80
|
-
this.socket.on('status_update', (data) => {
|
|
81
|
-
if (data.projectId === projectId) {
|
|
82
|
-
if (data.status === 'completed' && events.onComplete) {
|
|
83
|
-
events.onComplete(data);
|
|
84
|
-
}
|
|
85
|
-
else if (data.status === 'error' && events.onError) {
|
|
86
|
-
events.onError(data);
|
|
87
|
-
}
|
|
88
|
-
else if (events.onProgress) {
|
|
89
|
-
events.onProgress(data);
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
});
|
|
93
|
-
}
|
|
94
|
-
/**
|
|
95
|
-
* Получает статус индексации
|
|
96
|
-
*/
|
|
97
|
-
async getStatus(projectId) {
|
|
98
|
-
const response = await fetch(`${this.baseURL}/api/v1/indexing/project/${projectId}/status`, {
|
|
99
|
-
headers: {
|
|
100
|
-
...(this.apiKey && { 'Authorization': `Bearer ${this.apiKey}` }),
|
|
101
|
-
},
|
|
102
|
-
});
|
|
103
|
-
const result = await response.json();
|
|
104
|
-
return result;
|
|
105
|
-
}
|
|
106
|
-
/**
|
|
107
|
-
* Останавливает индексацию
|
|
108
|
-
*/
|
|
109
|
-
async stopIndexing(projectId) {
|
|
110
|
-
const response = await fetch(`${this.baseURL}/api/v1/indexing/project/${projectId}/stop`, {
|
|
111
|
-
method: 'POST',
|
|
112
|
-
headers: {
|
|
113
|
-
...(this.apiKey && { 'Authorization': `Bearer ${this.apiKey}` }),
|
|
114
|
-
},
|
|
115
|
-
});
|
|
116
|
-
const result = await response.json();
|
|
117
|
-
if (!result.success) {
|
|
118
|
-
throw new Error('Ошибка остановки индексации');
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
/**
|
|
122
|
-
* Простой метод для полной индексации с автоматическими событиями
|
|
123
|
-
*/
|
|
124
|
-
async indexProjectWithEvents(options, events = {}) {
|
|
125
|
-
// Подключаемся если еще не подключены
|
|
126
|
-
if (!this.socket) {
|
|
127
|
-
await this.connect();
|
|
128
|
-
}
|
|
129
|
-
// Запускаем индексацию
|
|
130
|
-
const { projectId } = await this.indexProject(options);
|
|
131
|
-
// Подписываемся на события
|
|
132
|
-
this.subscribeToProject(projectId, events);
|
|
133
|
-
console.log(`🚀 Индексация проекта "${options.name || options.path}" запущена (ID: ${projectId})`);
|
|
134
|
-
return projectId;
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
exports.SimpleIndexingClient = SimpleIndexingClient;
|
|
138
|
-
//# sourceMappingURL=simple-indexing-client.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"simple-indexing-client.js","sourceRoot":"","sources":["../../src/simple-indexing-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,497 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.CodeSolverWebSocketClient = exports.WebSocketNamespace = void 0;
|
|
4
|
-
const websocket_events_constants_1 = require("../constants/websocket-events.constants");
|
|
5
|
-
const websocket_namespaces_constants_js_1 = require("../constants/websocket-namespaces.constants.js");
|
|
6
|
-
const logger_js_1 = require("./logger.js");
|
|
7
|
-
const base_ws_client_js_1 = require("../ws/base-ws-client.js");
|
|
8
|
-
// Реэкспортируем WebSocketNamespace для других модулей
|
|
9
|
-
var websocket_namespaces_constants_js_2 = require("../constants/websocket-namespaces.constants.js");
|
|
10
|
-
Object.defineProperty(exports, "WebSocketNamespace", { enumerable: true, get: function () { return websocket_namespaces_constants_js_2.WebSocketNamespace; } });
|
|
11
|
-
// Дополнительные события, которые могут отсутствовать в основном перечислении
|
|
12
|
-
const CUSTOM_EVENTS = {
|
|
13
|
-
GET_REASONING_STATUS: 'get_reasoning_status'
|
|
14
|
-
};
|
|
15
|
-
/**
|
|
16
|
-
* Специализированный WebSocket клиент для пространства имен reasoning
|
|
17
|
-
*/
|
|
18
|
-
class ReasoningWsClient extends base_ws_client_js_1.BaseWebSocketClient {
|
|
19
|
-
/**
|
|
20
|
-
* Создает новый WebSocket клиент для рассуждений
|
|
21
|
-
* @param {string} baseURL Базовый URL API
|
|
22
|
-
* @param {BaseWebSocketClientOptions} options Опции клиента
|
|
23
|
-
*/
|
|
24
|
-
constructor(baseURL, options = {}) {
|
|
25
|
-
super(websocket_namespaces_constants_js_1.WebSocketNamespace.DEFAULT, baseURL, options); // ИСПРАВЛЕНО: DEFAULT вместо REASONING
|
|
26
|
-
/** Активная сессия рассуждения */
|
|
27
|
-
this.activeReasoningId = null;
|
|
28
|
-
}
|
|
29
|
-
/**
|
|
30
|
-
* Подключается к серверу WebSocket с указанным ID рассуждения
|
|
31
|
-
* @param {string} reasoningId ID рассуждения
|
|
32
|
-
* @param {object} options Дополнительные опции
|
|
33
|
-
* @returns {Promise<boolean>} Успешность подключения
|
|
34
|
-
*/
|
|
35
|
-
async connectWithReasoning(reasoningId, options = {}) {
|
|
36
|
-
if (reasoningId) {
|
|
37
|
-
this.activeReasoningId = reasoningId;
|
|
38
|
-
}
|
|
39
|
-
return super.connect({
|
|
40
|
-
reasoningId: this.activeReasoningId,
|
|
41
|
-
...options
|
|
42
|
-
});
|
|
43
|
-
}
|
|
44
|
-
/**
|
|
45
|
-
* Присоединяется к сессии рассуждения
|
|
46
|
-
* @param {string} reasoningId ID рассуждения
|
|
47
|
-
* @param {boolean} setActive Установить ли как активную сессию
|
|
48
|
-
* @returns {Promise<boolean>} Успешность операции
|
|
49
|
-
*/
|
|
50
|
-
async joinReasoning(reasoningId, setActive = true) {
|
|
51
|
-
if (!this.isConnected()) {
|
|
52
|
-
this.logger.warn(`Попытка присоединения к рассуждению ${reasoningId}, но клиент не подключен`);
|
|
53
|
-
return false;
|
|
54
|
-
}
|
|
55
|
-
try {
|
|
56
|
-
// Отправляем запрос на присоединение
|
|
57
|
-
const result = await this.emitWithAck(websocket_events_constants_1.WebSocketEvents.JOIN_REASONING, { reasoningId });
|
|
58
|
-
if (result.success && setActive) {
|
|
59
|
-
this.activeReasoningId = reasoningId;
|
|
60
|
-
}
|
|
61
|
-
return result.success;
|
|
62
|
-
}
|
|
63
|
-
catch (error) {
|
|
64
|
-
this.logger.error(`Ошибка при присоединении к рассуждению ${reasoningId}`, error);
|
|
65
|
-
return false;
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
/**
|
|
69
|
-
* Подключает к сессии рассуждения и устанавливает обработчик для thinking
|
|
70
|
-
* @param {string} reasoningId ID рассуждения
|
|
71
|
-
* @param {function} thinkingHandler Обработчик событий thinking
|
|
72
|
-
* @returns {Promise<string>} ID рассуждения
|
|
73
|
-
*/
|
|
74
|
-
async connectToThinkingSession(reasoningId, thinkingHandler) {
|
|
75
|
-
// Сначала подключаемся к сессии рассуждения
|
|
76
|
-
const connected = await this.connectWithReasoning(reasoningId, { autoJoin: true });
|
|
77
|
-
if (!connected) {
|
|
78
|
-
throw new Error(`Не удалось подключиться к рассуждению ${reasoningId}`);
|
|
79
|
-
}
|
|
80
|
-
// Затем подписываемся на мышление, если указан обработчик
|
|
81
|
-
if (thinkingHandler) {
|
|
82
|
-
this.subscribeToThinking(thinkingHandler);
|
|
83
|
-
}
|
|
84
|
-
return reasoningId;
|
|
85
|
-
}
|
|
86
|
-
/**
|
|
87
|
-
* Подписаться на события мышления
|
|
88
|
-
* @param callback Функция обратного вызова для обработки событий мышления
|
|
89
|
-
*/
|
|
90
|
-
subscribeToThinking(callback) {
|
|
91
|
-
this.on(websocket_events_constants_1.ReasoningEventNames.THINKING, callback);
|
|
92
|
-
}
|
|
93
|
-
/**
|
|
94
|
-
* Отписаться от событий мышления
|
|
95
|
-
* @param callback Функция обратного вызова для обработки событий мышления
|
|
96
|
-
*/
|
|
97
|
-
unsubscribeFromThinking(callback) {
|
|
98
|
-
this.off(websocket_events_constants_1.ReasoningEventNames.THINKING, callback);
|
|
99
|
-
}
|
|
100
|
-
/**
|
|
101
|
-
* Проверяет статус рассуждения
|
|
102
|
-
* @param {string} reasoningId ID рассуждения
|
|
103
|
-
* @returns {Promise<object>} Объект с информацией о статусе
|
|
104
|
-
*/
|
|
105
|
-
async getReasoningStatus(reasoningId) {
|
|
106
|
-
const id = reasoningId || this.activeReasoningId;
|
|
107
|
-
if (!id) {
|
|
108
|
-
return { exists: false, isActive: false };
|
|
109
|
-
}
|
|
110
|
-
try {
|
|
111
|
-
if (!this.isConnected()) {
|
|
112
|
-
await this.connect();
|
|
113
|
-
}
|
|
114
|
-
const result = await this.emitWithAck(CUSTOM_EVENTS.GET_REASONING_STATUS, { reasoningId: id });
|
|
115
|
-
return result;
|
|
116
|
-
}
|
|
117
|
-
catch (error) {
|
|
118
|
-
this.logger.error(`Ошибка при получении статуса рассуждения ${id}`, error);
|
|
119
|
-
return { exists: false, isActive: false };
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
/**
|
|
123
|
-
* Проверяет существование рассуждения
|
|
124
|
-
* @param {string} reasoningId ID рассуждения
|
|
125
|
-
* @returns {Promise<boolean>} true, если рассуждение существует
|
|
126
|
-
*/
|
|
127
|
-
async checkReasoningExists(reasoningId) {
|
|
128
|
-
try {
|
|
129
|
-
const { exists } = await this.getReasoningStatus(reasoningId);
|
|
130
|
-
return exists;
|
|
131
|
-
}
|
|
132
|
-
catch (error) {
|
|
133
|
-
return false;
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
/**
|
|
137
|
-
* Получает ID активной сессии рассуждения
|
|
138
|
-
* @returns {string | null} ID активной сессии или null
|
|
139
|
-
*/
|
|
140
|
-
getActiveReasoningId() {
|
|
141
|
-
return this.activeReasoningId;
|
|
142
|
-
}
|
|
143
|
-
}
|
|
144
|
-
/**
|
|
145
|
-
* Специализированный WebSocket клиент для пространства имен indexing
|
|
146
|
-
*/
|
|
147
|
-
class IndexingWsClient extends base_ws_client_js_1.BaseWebSocketClient {
|
|
148
|
-
/**
|
|
149
|
-
* Создает новый WebSocket клиент для индексации
|
|
150
|
-
* @param {string} baseURL Базовый URL API
|
|
151
|
-
* @param {BaseWebSocketClientOptions} options Опции клиента
|
|
152
|
-
*/
|
|
153
|
-
constructor(baseURL, options = {}) {
|
|
154
|
-
super(websocket_namespaces_constants_js_1.WebSocketNamespace.INDEXING, baseURL, options);
|
|
155
|
-
/** Активный проект */
|
|
156
|
-
this.activeProjectId = null;
|
|
157
|
-
}
|
|
158
|
-
/**
|
|
159
|
-
* Подключается к серверу WebSocket с указанным ID проекта
|
|
160
|
-
* @param {string} projectId ID проекта
|
|
161
|
-
* @returns {Promise<boolean>} Успешность подключения
|
|
162
|
-
*/
|
|
163
|
-
async connectWithProject(projectId) {
|
|
164
|
-
if (projectId) {
|
|
165
|
-
this.activeProjectId = projectId;
|
|
166
|
-
}
|
|
167
|
-
return super.connect({
|
|
168
|
-
projectId: this.activeProjectId
|
|
169
|
-
});
|
|
170
|
-
}
|
|
171
|
-
/**
|
|
172
|
-
* Получает ID активного проекта
|
|
173
|
-
* @returns {string | null} ID активного проекта или null
|
|
174
|
-
*/
|
|
175
|
-
getActiveProjectId() {
|
|
176
|
-
return this.activeProjectId;
|
|
177
|
-
}
|
|
178
|
-
}
|
|
179
|
-
/**
|
|
180
|
-
* Специализированный WebSocket клиент для пространства имен dependencies
|
|
181
|
-
*/
|
|
182
|
-
class DependenciesWsClient extends base_ws_client_js_1.BaseWebSocketClient {
|
|
183
|
-
/**
|
|
184
|
-
* Создает новый WebSocket клиент для зависимостей
|
|
185
|
-
* @param {string} baseURL Базовый URL API
|
|
186
|
-
* @param {BaseWebSocketClientOptions} options Опции клиента
|
|
187
|
-
*/
|
|
188
|
-
constructor(baseURL, options = {}) {
|
|
189
|
-
super(websocket_namespaces_constants_js_1.WebSocketNamespace.DEPENDENCIES, baseURL, options);
|
|
190
|
-
}
|
|
191
|
-
/**
|
|
192
|
-
* Подключается к серверу WebSocket с указанным ID проекта
|
|
193
|
-
* @param {string} projectId ID проекта
|
|
194
|
-
* @returns {Promise<boolean>} Успешность подключения
|
|
195
|
-
*/
|
|
196
|
-
async connectWithProject(projectId) {
|
|
197
|
-
return super.connect({ projectId });
|
|
198
|
-
}
|
|
199
|
-
}
|
|
200
|
-
/**
|
|
201
|
-
* Специализированный WebSocket клиент для пространства имен notifications
|
|
202
|
-
*/
|
|
203
|
-
class NotificationsWsClient extends base_ws_client_js_1.BaseWebSocketClient {
|
|
204
|
-
/**
|
|
205
|
-
* Создает новый WebSocket клиент для уведомлений
|
|
206
|
-
* @param {string} baseURL Базовый URL API
|
|
207
|
-
* @param {BaseWebSocketClientOptions} options Опции клиента
|
|
208
|
-
*/
|
|
209
|
-
constructor(baseURL, options = {}) {
|
|
210
|
-
super(websocket_namespaces_constants_js_1.WebSocketNamespace.DEFAULT, baseURL, options);
|
|
211
|
-
}
|
|
212
|
-
}
|
|
213
|
-
/**
|
|
214
|
-
* WebSocket клиент для работы с Code Solver API (фасад)
|
|
215
|
-
*/
|
|
216
|
-
class CodeSolverWebSocketClient {
|
|
217
|
-
/**
|
|
218
|
-
* Создает новый WebSocket клиент для Code Solver API
|
|
219
|
-
* @param {string} baseURL Базовый URL API
|
|
220
|
-
* @param {CodeSolverWebSocketOptions} [options] Опции клиента
|
|
221
|
-
*/
|
|
222
|
-
constructor(baseURL, options = {}) {
|
|
223
|
-
this.baseURL = baseURL.replace(/^http/, 'ws');
|
|
224
|
-
this.options = {
|
|
225
|
-
...options,
|
|
226
|
-
headers: {
|
|
227
|
-
...(options.headers || {}),
|
|
228
|
-
...(options.apiKey ? { 'Authorization': `Bearer ${options.apiKey}` } : {})
|
|
229
|
-
}
|
|
230
|
-
};
|
|
231
|
-
// Создаем логгер
|
|
232
|
-
this.logger = (0, logger_js_1.createWebSocketLogger)('CodeSolverWebSocket');
|
|
233
|
-
// Трансформируем опции для специализированных клиентов
|
|
234
|
-
const clientOptions = {
|
|
235
|
-
...this.options,
|
|
236
|
-
enableAutoPing: options.enableAutoPing !== false,
|
|
237
|
-
enableSessionPersistence: options.enableSessionPersistence !== false,
|
|
238
|
-
// Преобразуем функцию логгера в экземпляр Logger, если передана функция
|
|
239
|
-
logger: typeof options.logger === 'function' ?
|
|
240
|
-
(0, logger_js_1.createWebSocketLogger)('CodeSolverWebSocket', options.logger) :
|
|
241
|
-
options.logger
|
|
242
|
-
};
|
|
243
|
-
// Создаем специализированные клиенты
|
|
244
|
-
this.reasoningClient = new ReasoningWsClient(this.baseURL, { ...clientOptions, logger: this.logger.withPrefix('Reasoning') });
|
|
245
|
-
this.indexingClient = new IndexingWsClient(this.baseURL, { ...clientOptions, logger: this.logger.withPrefix('Indexing') });
|
|
246
|
-
this.dependenciesClient = new DependenciesWsClient(this.baseURL, { ...clientOptions, logger: this.logger.withPrefix('Dependencies') });
|
|
247
|
-
this.notificationsClient = new NotificationsWsClient(this.baseURL, { ...clientOptions, logger: this.logger.withPrefix('Notifications') });
|
|
248
|
-
}
|
|
249
|
-
/**
|
|
250
|
-
* Подключается к пространству имен рассуждений
|
|
251
|
-
* @param {string} reasoningId ID рассуждения (опционально)
|
|
252
|
-
* @param {object} options Дополнительные настройки подключения
|
|
253
|
-
* @returns {Promise<boolean>} Результат подключения
|
|
254
|
-
*/
|
|
255
|
-
async connectToReasoning(reasoningId, options = {}) {
|
|
256
|
-
return this.reasoningClient.connectWithReasoning(reasoningId, options);
|
|
257
|
-
}
|
|
258
|
-
/**
|
|
259
|
-
* Подключается к пространству имен индексации
|
|
260
|
-
* @param {string} projectId ID проекта (опционально)
|
|
261
|
-
* @returns {Promise<boolean>} Результат подключения
|
|
262
|
-
*/
|
|
263
|
-
async connectToIndexing(projectId) {
|
|
264
|
-
return this.indexingClient.connectWithProject(projectId);
|
|
265
|
-
}
|
|
266
|
-
/**
|
|
267
|
-
* Подключается к уведомлениям
|
|
268
|
-
* @returns {Promise<boolean>} Результат подключения
|
|
269
|
-
*/
|
|
270
|
-
async connectToNotifications() {
|
|
271
|
-
return this.notificationsClient.connect({});
|
|
272
|
-
}
|
|
273
|
-
/**
|
|
274
|
-
* Подключается к пространству имен dependencies
|
|
275
|
-
* @param {string} projectId ID проекта (опционально)
|
|
276
|
-
* @returns {Promise<boolean>} Результат подключения
|
|
277
|
-
*/
|
|
278
|
-
async connectToDependencies(projectId) {
|
|
279
|
-
return this.dependenciesClient.connectWithProject(projectId);
|
|
280
|
-
}
|
|
281
|
-
/**
|
|
282
|
-
* Отключается от пространства имен
|
|
283
|
-
* @param {WebSocketNamespace} namespace Пространство имен
|
|
284
|
-
*/
|
|
285
|
-
disconnect(namespace) {
|
|
286
|
-
switch (namespace) {
|
|
287
|
-
// case WebSocketNamespace.REASONING: // УДАЛЕНО - неработающий namespace
|
|
288
|
-
// this.reasoningClient.disconnect();
|
|
289
|
-
// break;
|
|
290
|
-
case websocket_namespaces_constants_js_1.WebSocketNamespace.INDEXING:
|
|
291
|
-
this.indexingClient.disconnect();
|
|
292
|
-
break;
|
|
293
|
-
case websocket_namespaces_constants_js_1.WebSocketNamespace.DEPENDENCIES:
|
|
294
|
-
this.dependenciesClient.disconnect();
|
|
295
|
-
break;
|
|
296
|
-
case websocket_namespaces_constants_js_1.WebSocketNamespace.DEFAULT:
|
|
297
|
-
this.notificationsClient.disconnect();
|
|
298
|
-
break;
|
|
299
|
-
}
|
|
300
|
-
}
|
|
301
|
-
/**
|
|
302
|
-
* Отключается от всех пространств имен
|
|
303
|
-
*/
|
|
304
|
-
disconnectAll() {
|
|
305
|
-
this.reasoningClient.disconnect();
|
|
306
|
-
this.indexingClient.disconnect();
|
|
307
|
-
this.dependenciesClient.disconnect();
|
|
308
|
-
this.notificationsClient.disconnect();
|
|
309
|
-
}
|
|
310
|
-
/**
|
|
311
|
-
* Проверяет, подключен ли клиент к указанному пространству имен
|
|
312
|
-
* @param {WebSocketNamespace} namespace Пространство имен
|
|
313
|
-
* @returns {boolean} Статус подключения
|
|
314
|
-
*/
|
|
315
|
-
isConnected(namespace) {
|
|
316
|
-
switch (namespace) {
|
|
317
|
-
// case WebSocketNamespace.REASONING: // УДАЛЕНО - неработающий namespace
|
|
318
|
-
// return this.reasoningClient.isConnected();
|
|
319
|
-
case websocket_namespaces_constants_js_1.WebSocketNamespace.INDEXING:
|
|
320
|
-
return this.indexingClient.isConnected();
|
|
321
|
-
case websocket_namespaces_constants_js_1.WebSocketNamespace.DEPENDENCIES:
|
|
322
|
-
return this.dependenciesClient.isConnected();
|
|
323
|
-
case websocket_namespaces_constants_js_1.WebSocketNamespace.DEFAULT:
|
|
324
|
-
return this.notificationsClient.isConnected();
|
|
325
|
-
default:
|
|
326
|
-
return false;
|
|
327
|
-
}
|
|
328
|
-
}
|
|
329
|
-
/**
|
|
330
|
-
* Проверяет, подключен ли клиент к пространству имен рассуждений
|
|
331
|
-
* @returns {boolean} Статус подключения
|
|
332
|
-
*/
|
|
333
|
-
isConnectedToReasoning() {
|
|
334
|
-
return this.reasoningClient.isConnected();
|
|
335
|
-
}
|
|
336
|
-
/**
|
|
337
|
-
* Проверяет, подключен ли клиент к пространству имен индексации
|
|
338
|
-
* @returns {boolean} Статус подключения
|
|
339
|
-
*/
|
|
340
|
-
isConnectedToIndexing() {
|
|
341
|
-
return this.indexingClient.isConnected();
|
|
342
|
-
}
|
|
343
|
-
/**
|
|
344
|
-
* Проверяет, подключен ли клиент к пространству имен уведомлений
|
|
345
|
-
* @returns {boolean} Статус подключения
|
|
346
|
-
*/
|
|
347
|
-
isConnectedToNotifications() {
|
|
348
|
-
return this.notificationsClient.isConnected();
|
|
349
|
-
}
|
|
350
|
-
/**
|
|
351
|
-
* Получает ID активной сессии рассуждения
|
|
352
|
-
* @returns {string | null} ID активной сессии рассуждения или null
|
|
353
|
-
*/
|
|
354
|
-
getActiveReasoningId() {
|
|
355
|
-
return this.reasoningClient.getActiveReasoningId();
|
|
356
|
-
}
|
|
357
|
-
/**
|
|
358
|
-
* Получает ID активного проекта
|
|
359
|
-
* @returns {string | null} ID активного проекта или null
|
|
360
|
-
*/
|
|
361
|
-
getActiveProjectId() {
|
|
362
|
-
return this.indexingClient.getActiveProjectId();
|
|
363
|
-
}
|
|
364
|
-
/**
|
|
365
|
-
* Отправляет сообщение в пространство имен
|
|
366
|
-
* @param {WebSocketNamespace} namespace Пространство имен
|
|
367
|
-
* @param {string} eventType Тип события
|
|
368
|
-
* @param {any} [data] Данные сообщения
|
|
369
|
-
* @returns {boolean} Успешно ли отправлено сообщение
|
|
370
|
-
*/
|
|
371
|
-
send(namespace, eventType, data) {
|
|
372
|
-
switch (namespace) {
|
|
373
|
-
// case WebSocketNamespace.REASONING: // УДАЛЕНО - неработающий namespace
|
|
374
|
-
// return this.reasoningClient.send(eventType, data);
|
|
375
|
-
case websocket_namespaces_constants_js_1.WebSocketNamespace.INDEXING:
|
|
376
|
-
return this.indexingClient.send(eventType, data);
|
|
377
|
-
case websocket_namespaces_constants_js_1.WebSocketNamespace.DEPENDENCIES:
|
|
378
|
-
return this.dependenciesClient.send(eventType, data);
|
|
379
|
-
case websocket_namespaces_constants_js_1.WebSocketNamespace.DEFAULT:
|
|
380
|
-
return this.notificationsClient.send(eventType, data);
|
|
381
|
-
default:
|
|
382
|
-
throw new Error(`Неизвестное пространство имен ${namespace}`);
|
|
383
|
-
}
|
|
384
|
-
}
|
|
385
|
-
/**
|
|
386
|
-
* Отправляет сообщение в активную сессию рассуждения
|
|
387
|
-
* @param {string} eventType Тип события
|
|
388
|
-
* @param {any} [data] Данные сообщения
|
|
389
|
-
* @returns {boolean} Успешно ли отправлено сообщение
|
|
390
|
-
*/
|
|
391
|
-
sendToReasoning(eventType, data) {
|
|
392
|
-
return this.reasoningClient.send(eventType, data);
|
|
393
|
-
}
|
|
394
|
-
/**
|
|
395
|
-
* Отправляет сообщение в активную сессию индексации
|
|
396
|
-
* @param {string} eventType Тип события
|
|
397
|
-
* @param {any} [data] Данные сообщения
|
|
398
|
-
* @returns {boolean} Успешно ли отправлено сообщение
|
|
399
|
-
*/
|
|
400
|
-
sendToIndexing(eventType, data) {
|
|
401
|
-
return this.indexingClient.send(eventType, data);
|
|
402
|
-
}
|
|
403
|
-
/**
|
|
404
|
-
* Отправляет сообщение в уведомления
|
|
405
|
-
* @param {string} eventType Тип события
|
|
406
|
-
* @param {any} [data] Данные сообщения
|
|
407
|
-
* @returns {boolean} Успешно ли отправлено сообщение
|
|
408
|
-
*/
|
|
409
|
-
sendToNotifications(eventType, data) {
|
|
410
|
-
return this.notificationsClient.send(eventType, data);
|
|
411
|
-
}
|
|
412
|
-
/**
|
|
413
|
-
* Добавляет обработчик события для пространства имен
|
|
414
|
-
* @param {string} eventType Тип события
|
|
415
|
-
* @param {Function} handler Обработчик события
|
|
416
|
-
* @param {WebSocketNamespace} [namespace] Пространство имен (если не указано, добавляется ко всем активным)
|
|
417
|
-
*/
|
|
418
|
-
on(eventType, handler, namespace) {
|
|
419
|
-
if (namespace) {
|
|
420
|
-
// Если указано пространство имен, добавляем обработчик только к нему
|
|
421
|
-
switch (namespace) {
|
|
422
|
-
// case WebSocketNamespace.REASONING: // УДАЛЕНО - неработающий namespace
|
|
423
|
-
// this.reasoningClient.on(eventType, handler);
|
|
424
|
-
// break;
|
|
425
|
-
case websocket_namespaces_constants_js_1.WebSocketNamespace.INDEXING:
|
|
426
|
-
this.indexingClient.on(eventType, handler);
|
|
427
|
-
break;
|
|
428
|
-
case websocket_namespaces_constants_js_1.WebSocketNamespace.DEPENDENCIES:
|
|
429
|
-
this.dependenciesClient.on(eventType, handler);
|
|
430
|
-
break;
|
|
431
|
-
case websocket_namespaces_constants_js_1.WebSocketNamespace.DEFAULT:
|
|
432
|
-
this.notificationsClient.on(eventType, handler);
|
|
433
|
-
break;
|
|
434
|
-
}
|
|
435
|
-
}
|
|
436
|
-
else {
|
|
437
|
-
// Если пространство имен не указано, добавляем обработчик ко всем активным
|
|
438
|
-
this.reasoningClient.on(eventType, handler);
|
|
439
|
-
this.indexingClient.on(eventType, handler);
|
|
440
|
-
this.dependenciesClient.on(eventType, handler);
|
|
441
|
-
this.notificationsClient.on(eventType, handler);
|
|
442
|
-
}
|
|
443
|
-
}
|
|
444
|
-
/**
|
|
445
|
-
* Удаляет обработчик события для пространства имен
|
|
446
|
-
* @param {string} eventType Тип события
|
|
447
|
-
* @param {Function} [handler] Обработчик события (если не указан, удаляются все обработчики)
|
|
448
|
-
* @param {WebSocketNamespace} [namespace] Пространство имен (если не указано, удаляется из всех активных)
|
|
449
|
-
*/
|
|
450
|
-
off(eventType, handler, namespace) {
|
|
451
|
-
if (namespace) {
|
|
452
|
-
// Если указано пространство имен, удаляем обработчик только из него
|
|
453
|
-
switch (namespace) {
|
|
454
|
-
// case WebSocketNamespace.REASONING: // УДАЛЕНО - неработающий namespace
|
|
455
|
-
// this.reasoningClient.off(eventType, handler);
|
|
456
|
-
// break;
|
|
457
|
-
case websocket_namespaces_constants_js_1.WebSocketNamespace.INDEXING:
|
|
458
|
-
this.indexingClient.off(eventType, handler);
|
|
459
|
-
break;
|
|
460
|
-
case websocket_namespaces_constants_js_1.WebSocketNamespace.DEPENDENCIES:
|
|
461
|
-
this.dependenciesClient.off(eventType, handler);
|
|
462
|
-
break;
|
|
463
|
-
case websocket_namespaces_constants_js_1.WebSocketNamespace.DEFAULT:
|
|
464
|
-
this.notificationsClient.off(eventType, handler);
|
|
465
|
-
break;
|
|
466
|
-
}
|
|
467
|
-
}
|
|
468
|
-
else {
|
|
469
|
-
// Если пространство имен не указано, удаляем обработчик из всех активных
|
|
470
|
-
this.reasoningClient.off(eventType, handler);
|
|
471
|
-
this.indexingClient.off(eventType, handler);
|
|
472
|
-
this.dependenciesClient.off(eventType, handler);
|
|
473
|
-
this.notificationsClient.off(eventType, handler);
|
|
474
|
-
}
|
|
475
|
-
}
|
|
476
|
-
/**
|
|
477
|
-
* Получает ID сокета для указанного пространства имен
|
|
478
|
-
* @param {WebSocketNamespace} [namespace=WebSocketNamespace.REASONING] Пространство имен
|
|
479
|
-
* @returns {string|null} ID сокета или null, если соединение не установлено
|
|
480
|
-
*/
|
|
481
|
-
getSocketId(namespace = websocket_namespaces_constants_js_1.WebSocketNamespace.DEFAULT) {
|
|
482
|
-
switch (namespace) {
|
|
483
|
-
// case WebSocketNamespace.REASONING: // УДАЛЕНО - неработающий namespace
|
|
484
|
-
// return this.reasoningClient.getSocketId();
|
|
485
|
-
case websocket_namespaces_constants_js_1.WebSocketNamespace.INDEXING:
|
|
486
|
-
return this.indexingClient.getSocketId();
|
|
487
|
-
case websocket_namespaces_constants_js_1.WebSocketNamespace.DEPENDENCIES:
|
|
488
|
-
return this.dependenciesClient.getSocketId();
|
|
489
|
-
case websocket_namespaces_constants_js_1.WebSocketNamespace.DEFAULT:
|
|
490
|
-
return this.notificationsClient.getSocketId();
|
|
491
|
-
default:
|
|
492
|
-
return null;
|
|
493
|
-
}
|
|
494
|
-
}
|
|
495
|
-
}
|
|
496
|
-
exports.CodeSolverWebSocketClient = CodeSolverWebSocketClient;
|
|
497
|
-
//# sourceMappingURL=code-solver-websocket-client.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"code-solver-websocket-client.js","sourceRoot":"","sources":["../../../src/utils/code-solver-websocket-client.ts"],"names":[],"mappings":"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"}
|