solver-sdk 1.8.0 → 1.9.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 +176 -468
- package/dist/cjs/api/{chat-api.js → chat-api/index.js} +77 -125
- package/dist/cjs/api/chat-api/index.js.map +1 -0
- package/dist/cjs/api/chat-api/interfaces.js +3 -0
- package/dist/cjs/api/chat-api/interfaces.js.map +1 -0
- package/dist/cjs/api/chat-api/models.js +6 -0
- package/dist/cjs/api/chat-api/models.js.map +1 -0
- package/dist/cjs/api/chat-api/stream-utils.js +192 -0
- package/dist/cjs/api/chat-api/stream-utils.js.map +1 -0
- package/dist/cjs/api/chat-api/websocket-helpers.js +211 -0
- package/dist/cjs/api/chat-api/websocket-helpers.js.map +1 -0
- package/dist/cjs/api/projects-api.js +275 -3
- package/dist/cjs/api/projects-api.js.map +1 -1
- package/dist/cjs/code-solver-sdk.js +21 -23
- package/dist/cjs/code-solver-sdk.js.map +1 -1
- package/dist/cjs/constants/websocket-events.constants.js +90 -52
- package/dist/cjs/constants/websocket-events.constants.js.map +1 -1
- package/dist/cjs/constants/websocket-namespaces.constants.js +18 -0
- package/dist/cjs/constants/websocket-namespaces.constants.js.map +1 -0
- package/dist/cjs/interfaces/websocket/callbacks.interfaces.js +3 -0
- package/dist/cjs/interfaces/websocket/callbacks.interfaces.js.map +1 -0
- package/dist/cjs/interfaces/websocket/client-options.interfaces.js +3 -0
- package/dist/cjs/interfaces/websocket/client-options.interfaces.js.map +1 -0
- package/dist/cjs/interfaces/websocket/events.interfaces.js +3 -0
- package/dist/cjs/interfaces/websocket/events.interfaces.js.map +1 -0
- package/dist/cjs/interfaces/websocket/stats.interfaces.js +3 -0
- package/dist/cjs/interfaces/websocket/stats.interfaces.js.map +1 -0
- package/dist/cjs/utils/code-solver-websocket-client.js +383 -1473
- package/dist/cjs/utils/code-solver-websocket-client.js.map +1 -1
- package/dist/cjs/utils/connection-state-manager.js +133 -0
- package/dist/cjs/utils/connection-state-manager.js.map +1 -0
- package/dist/cjs/utils/http-client.js +7 -0
- package/dist/cjs/utils/http-client.js.map +1 -1
- package/dist/cjs/utils/logger.js +106 -0
- package/dist/cjs/utils/logger.js.map +1 -0
- package/dist/cjs/utils/ping-pong-manager.js +306 -0
- package/dist/cjs/utils/ping-pong-manager.js.map +1 -0
- package/dist/cjs/utils/reasoning-auth-helper.js +58 -0
- package/dist/cjs/utils/reasoning-auth-helper.js.map +1 -0
- package/dist/cjs/utils/session-manager.js +114 -0
- package/dist/cjs/utils/session-manager.js.map +1 -0
- package/dist/cjs/utils/websocket-client.js +37 -10
- package/dist/cjs/utils/websocket-client.js.map +1 -1
- package/dist/cjs/ws/base-ws-client.js +286 -0
- package/dist/cjs/ws/base-ws-client.js.map +1 -0
- package/dist/cjs/ws/dependencies-ws-client.js +11 -0
- package/dist/cjs/ws/dependencies-ws-client.js.map +1 -0
- package/dist/cjs/ws/diagnostics-service.js +170 -0
- package/dist/cjs/ws/diagnostics-service.js.map +1 -0
- package/dist/cjs/ws/indexing-ws-client.js +223 -0
- package/dist/cjs/ws/indexing-ws-client.js.map +1 -0
- package/dist/cjs/ws/notifications-ws-client.js +12 -0
- package/dist/cjs/ws/notifications-ws-client.js.map +1 -0
- package/dist/cjs/ws/reasoning-ws-client.js +330 -0
- package/dist/cjs/ws/reasoning-ws-client.js.map +1 -0
- package/dist/esm/api/{chat-api.js → chat-api/index.js} +74 -125
- package/dist/esm/api/chat-api/index.js.map +1 -0
- package/dist/esm/api/chat-api/interfaces.js +2 -0
- package/dist/esm/api/chat-api/interfaces.js.map +1 -0
- package/dist/esm/api/chat-api/models.js +5 -0
- package/dist/esm/api/chat-api/models.js.map +1 -0
- package/dist/esm/api/chat-api/stream-utils.js +188 -0
- package/dist/esm/api/chat-api/stream-utils.js.map +1 -0
- package/dist/esm/api/chat-api/websocket-helpers.js +205 -0
- package/dist/esm/api/chat-api/websocket-helpers.js.map +1 -0
- package/dist/esm/api/projects-api.js +275 -3
- package/dist/esm/api/projects-api.js.map +1 -1
- package/dist/esm/code-solver-sdk.js +13 -15
- package/dist/esm/code-solver-sdk.js.map +1 -1
- package/dist/esm/constants/websocket-events.constants.js +89 -51
- package/dist/esm/constants/websocket-events.constants.js.map +1 -1
- package/dist/esm/constants/websocket-namespaces.constants.js +15 -0
- package/dist/esm/constants/websocket-namespaces.constants.js.map +1 -0
- package/dist/esm/interfaces/websocket/callbacks.interfaces.js +2 -0
- package/dist/esm/interfaces/websocket/callbacks.interfaces.js.map +1 -0
- package/dist/esm/interfaces/websocket/client-options.interfaces.js +2 -0
- package/dist/esm/interfaces/websocket/client-options.interfaces.js.map +1 -0
- package/dist/esm/interfaces/websocket/events.interfaces.js +2 -0
- package/dist/esm/interfaces/websocket/events.interfaces.js.map +1 -0
- package/dist/esm/interfaces/websocket/stats.interfaces.js +2 -0
- package/dist/esm/interfaces/websocket/stats.interfaces.js.map +1 -0
- package/dist/esm/utils/code-solver-websocket-client.js +382 -1473
- package/dist/esm/utils/code-solver-websocket-client.js.map +1 -1
- package/dist/esm/utils/connection-state-manager.js +129 -0
- package/dist/esm/utils/connection-state-manager.js.map +1 -0
- package/dist/esm/utils/http-client.js +7 -0
- package/dist/esm/utils/http-client.js.map +1 -1
- package/dist/esm/utils/logger.js +101 -0
- package/dist/esm/utils/logger.js.map +1 -0
- package/dist/esm/utils/ping-pong-manager.js +302 -0
- package/dist/esm/utils/ping-pong-manager.js.map +1 -0
- package/dist/esm/utils/reasoning-auth-helper.js +54 -0
- package/dist/esm/utils/reasoning-auth-helper.js.map +1 -0
- package/dist/esm/utils/session-manager.js +109 -0
- package/dist/esm/utils/session-manager.js.map +1 -0
- package/dist/esm/utils/websocket-client.js +37 -10
- package/dist/esm/utils/websocket-client.js.map +1 -1
- package/dist/esm/ws/base-ws-client.js +282 -0
- package/dist/esm/ws/base-ws-client.js.map +1 -0
- package/dist/esm/ws/dependencies-ws-client.js +7 -0
- package/dist/esm/ws/dependencies-ws-client.js.map +1 -0
- package/dist/esm/ws/diagnostics-service.js +166 -0
- package/dist/esm/ws/diagnostics-service.js.map +1 -0
- package/dist/esm/ws/indexing-ws-client.js +219 -0
- package/dist/esm/ws/indexing-ws-client.js.map +1 -0
- package/dist/esm/ws/notifications-ws-client.js +8 -0
- package/dist/esm/ws/notifications-ws-client.js.map +1 -0
- package/dist/esm/ws/reasoning-ws-client.js +326 -0
- package/dist/esm/ws/reasoning-ws-client.js.map +1 -0
- package/dist/types/api/chat-api/index.d.ts +81 -0
- package/dist/types/api/chat-api/index.d.ts.map +1 -0
- package/dist/types/api/chat-api/interfaces.d.ts +47 -0
- package/dist/types/api/chat-api/interfaces.d.ts.map +1 -0
- package/dist/types/api/{chat-api.d.ts → chat-api/models.d.ts} +10 -73
- package/dist/types/api/chat-api/models.d.ts.map +1 -0
- package/dist/types/api/chat-api/stream-utils.d.ts +31 -0
- package/dist/types/api/chat-api/stream-utils.d.ts.map +1 -0
- package/dist/types/api/chat-api/websocket-helpers.d.ts +40 -0
- package/dist/types/api/chat-api/websocket-helpers.d.ts.map +1 -0
- package/dist/types/api/projects-api.d.ts +114 -1
- package/dist/types/api/projects-api.d.ts.map +1 -1
- package/dist/types/code-solver-sdk.d.ts +3 -2
- package/dist/types/code-solver-sdk.d.ts.map +1 -1
- package/dist/types/constants/websocket-events.constants.d.ts +77 -36
- package/dist/types/constants/websocket-events.constants.d.ts.map +1 -1
- package/dist/types/constants/websocket-namespaces.constants.d.ts +14 -0
- package/dist/types/constants/websocket-namespaces.constants.d.ts.map +1 -0
- package/dist/types/interfaces/http-client.d.ts +1 -1
- package/dist/types/interfaces/http-client.d.ts.map +1 -1
- package/dist/types/interfaces/websocket/callbacks.interfaces.d.ts +30 -0
- package/dist/types/interfaces/websocket/callbacks.interfaces.d.ts.map +1 -0
- package/dist/types/interfaces/websocket/client-options.interfaces.d.ts +51 -0
- package/dist/types/interfaces/websocket/client-options.interfaces.d.ts.map +1 -0
- package/dist/types/interfaces/websocket/events.interfaces.d.ts +165 -0
- package/dist/types/interfaces/websocket/events.interfaces.d.ts.map +1 -0
- package/dist/types/interfaces/websocket/stats.interfaces.d.ts +72 -0
- package/dist/types/interfaces/websocket/stats.interfaces.d.ts.map +1 -0
- package/dist/types/types/index.d.ts +8 -0
- package/dist/types/types/index.d.ts.map +1 -1
- package/dist/types/utils/code-solver-websocket-client.d.ts +67 -612
- package/dist/types/utils/code-solver-websocket-client.d.ts.map +1 -1
- package/dist/types/utils/connection-state-manager.d.ts +94 -0
- package/dist/types/utils/connection-state-manager.d.ts.map +1 -0
- package/dist/types/utils/http-client.d.ts +5 -0
- package/dist/types/utils/http-client.d.ts.map +1 -1
- package/dist/types/utils/logger.d.ts +62 -0
- package/dist/types/utils/logger.d.ts.map +1 -0
- package/dist/types/utils/ping-pong-manager.d.ts +118 -0
- package/dist/types/utils/ping-pong-manager.d.ts.map +1 -0
- package/dist/types/utils/reasoning-auth-helper.d.ts +24 -0
- package/dist/types/utils/reasoning-auth-helper.d.ts.map +1 -0
- package/dist/types/utils/session-manager.d.ts +98 -0
- package/dist/types/utils/session-manager.d.ts.map +1 -0
- package/dist/types/utils/websocket-client.d.ts +6 -0
- package/dist/types/utils/websocket-client.d.ts.map +1 -1
- package/dist/types/ws/base-ws-client.d.ts +119 -0
- package/dist/types/ws/base-ws-client.d.ts.map +1 -0
- package/dist/types/ws/dependencies-ws-client.d.ts +6 -0
- package/dist/types/ws/dependencies-ws-client.d.ts.map +1 -0
- package/dist/types/ws/diagnostics-service.d.ts +93 -0
- package/dist/types/ws/diagnostics-service.d.ts.map +1 -0
- package/dist/types/ws/indexing-ws-client.d.ts +78 -0
- package/dist/types/ws/indexing-ws-client.d.ts.map +1 -0
- package/dist/types/ws/notifications-ws-client.d.ts +5 -0
- package/dist/types/ws/notifications-ws-client.d.ts.map +1 -0
- package/dist/types/ws/reasoning-ws-client.d.ts +87 -0
- package/dist/types/ws/reasoning-ws-client.d.ts.map +1 -0
- package/docs/API_REFERENCE.md +432 -0
- package/docs/AUTHENTICATION.md +83 -0
- package/docs/ERROR_HANDLING.md +240 -0
- package/docs/INTEGRATION_EXAMPLES.md +342 -0
- package/docs/PING_PONG.md +212 -0
- package/docs/README.md +102 -0
- package/docs/WEBSOCKET.md +139 -0
- package/docs/advanced/PING_PONG.md +212 -0
- package/docs/features/THINKING.md +158 -0
- package/docs/indexing/INDEXING.md +231 -0
- package/package.json +4 -3
- package/dist/cjs/api/chat-api.js.map +0 -1
- package/dist/esm/api/chat-api.js.map +0 -1
- package/dist/types/api/chat-api.d.ts.map +0 -1
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* API для работы с чатом
|
|
3
|
+
*/
|
|
4
|
+
import { IHttpClient } from '../../interfaces/http-client';
|
|
5
|
+
import { ChatService } from './interfaces';
|
|
6
|
+
import { ChatMessage, ChatOptions, ChatResponse, ChatStreamChunk, ChatStreamOptions, ThinkingStreamResponse, WebSocketConnectResponse, EventHandler } from './models';
|
|
7
|
+
export * from './models';
|
|
8
|
+
export * from './interfaces';
|
|
9
|
+
/**
|
|
10
|
+
* API для работы с чатом
|
|
11
|
+
*/
|
|
12
|
+
export declare class ChatApi implements ChatService {
|
|
13
|
+
private readonly httpClient;
|
|
14
|
+
/**
|
|
15
|
+
* Создает новый экземпляр API для работы с чатом
|
|
16
|
+
* @param {IHttpClient} httpClient HTTP клиент
|
|
17
|
+
*/
|
|
18
|
+
constructor(httpClient: IHttpClient);
|
|
19
|
+
/**
|
|
20
|
+
* Отправляет сообщение в чат и получает ответ от модели
|
|
21
|
+
* @param {ChatMessage[]} messages Массив сообщений для отправки
|
|
22
|
+
* @param {ChatOptions} [options] Дополнительные параметры
|
|
23
|
+
* @returns {Promise<ChatResponse>} Ответ модели
|
|
24
|
+
*/
|
|
25
|
+
chat(messages: ChatMessage[], options?: ChatOptions): Promise<ChatResponse>;
|
|
26
|
+
/**
|
|
27
|
+
* Алиас для метода chat для совместимости с другими SDK
|
|
28
|
+
* @param {ChatMessage[]} messages Массив сообщений для отправки
|
|
29
|
+
* @param {ChatOptions} [options] Дополнительные параметры
|
|
30
|
+
* @returns {Promise<ChatResponse>} Ответ модели
|
|
31
|
+
*/
|
|
32
|
+
chatCompletion(messages: ChatMessage[], options?: ChatOptions): Promise<ChatResponse>;
|
|
33
|
+
/**
|
|
34
|
+
* Проверяет доступность API чата
|
|
35
|
+
* @returns {Promise<boolean>} Результат проверки
|
|
36
|
+
*/
|
|
37
|
+
checkAvailability(): Promise<boolean>;
|
|
38
|
+
/**
|
|
39
|
+
* Отправляет сообщение в чат и получает ответ от модели
|
|
40
|
+
* с автоматическим переключением между регионами при ошибках перегрузки
|
|
41
|
+
* @param {ChatMessage[]} messages Массив сообщений для отправки
|
|
42
|
+
* @param {ChatOptions} [options] Дополнительные параметры
|
|
43
|
+
* @returns {Promise<ChatResponse>} Ответ модели
|
|
44
|
+
*/
|
|
45
|
+
chatWithRegionFailover(messages: ChatMessage[], options?: ChatOptions): Promise<ChatResponse>;
|
|
46
|
+
/**
|
|
47
|
+
* Отправляет одиночный запрос к модели с автоматическим переключением регионов
|
|
48
|
+
* @param {string} prompt Запрос к модели
|
|
49
|
+
* @param {ChatOptions} [options] Дополнительные параметры
|
|
50
|
+
* @returns {Promise<string>} Текстовый ответ модели
|
|
51
|
+
*/
|
|
52
|
+
sendPromptWithRegionFailover(prompt: string, options?: ChatOptions): Promise<string>;
|
|
53
|
+
/**
|
|
54
|
+
* Отправляет сообщение в чат в потоковом режиме
|
|
55
|
+
* @param {ChatMessage[]} messages Массив сообщений для отправки
|
|
56
|
+
* @param {ChatStreamOptions} [options] Дополнительные параметры
|
|
57
|
+
* @returns {AsyncGenerator<ChatStreamChunk>} Асинхронный генератор чанков ответа
|
|
58
|
+
*/
|
|
59
|
+
streamChat(messages: ChatMessage[], options?: ChatStreamOptions): AsyncGenerator<ChatStreamChunk>;
|
|
60
|
+
/**
|
|
61
|
+
* Отправляет запрос к модели в потоковом режиме (упрощенный интерфейс)
|
|
62
|
+
* @param {string} prompt Запрос к модели
|
|
63
|
+
* @param {ChatStreamOptions} [options] Дополнительные параметры
|
|
64
|
+
* @returns {AsyncGenerator<ChatStreamChunk>} Асинхронный генератор чанков ответа
|
|
65
|
+
*/
|
|
66
|
+
streamPrompt(prompt: string, options?: ChatStreamOptions): AsyncGenerator<ChatStreamChunk>;
|
|
67
|
+
/**
|
|
68
|
+
* Создает новое WebSocket соединение для потокового чата
|
|
69
|
+
* @returns {Promise<WebSocketConnectResponse>} Информация о созданном соединении
|
|
70
|
+
*/
|
|
71
|
+
connectWebSocket(): Promise<WebSocketConnectResponse>;
|
|
72
|
+
/**
|
|
73
|
+
* Отправляет сообщение в чат в потоковом режиме с поддержкой thinking через WebSocket
|
|
74
|
+
* @param {ChatMessage[]} messages Массив сообщений для отправки
|
|
75
|
+
* @param {ChatStreamOptions} [options] Дополнительные параметры
|
|
76
|
+
* @param {EventHandler} [onEvent] Обработчик событий WebSocket
|
|
77
|
+
* @returns {Promise<ThinkingStreamResponse>} Информация о потоковом запросе
|
|
78
|
+
*/
|
|
79
|
+
streamChatWithThinking(messages: ChatMessage[], options?: ChatStreamOptions, onEvent?: EventHandler): Promise<ThinkingStreamResponse>;
|
|
80
|
+
}
|
|
81
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/api/chat-api/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EACL,WAAW,EACX,WAAW,EACX,YAAY,EACZ,eAAe,EACf,iBAAiB,EACjB,sBAAsB,EACtB,wBAAwB,EACxB,YAAY,EACb,MAAM,UAAU,CAAC;AAKlB,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAE7B;;GAEG;AACH,qBAAa,OAAQ,YAAW,WAAW;IAK7B,OAAO,CAAC,QAAQ,CAAC,UAAU;IAJvC;;;OAGG;gBAC0B,UAAU,EAAE,WAAW;IAEpD;;;;;OAKG;IACU,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IAyBxF;;;;;OAKG;IACU,cAAc,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IAIlG;;;OAGG;IACU,iBAAiB,IAAI,OAAO,CAAC,OAAO,CAAC;IAalD;;;;;;OAMG;IACU,sBAAsB,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IA+D1G;;;;;OAKG;IACU,4BAA4B,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;IAcjG;;;;;OAKG;IACW,UAAU,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,cAAc,CAAC,eAAe,CAAC;IAkH/G;;;;;OAKG;IACW,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,cAAc,CAAC,eAAe,CAAC;IAQxG;;;OAGG;IACU,gBAAgB,IAAI,OAAO,CAAC,wBAAwB,CAAC;IAIlE;;;;;;OAMG;IACU,sBAAsB,CACjC,QAAQ,EAAE,WAAW,EAAE,EACvB,OAAO,GAAE,iBAAsB,EAC/B,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,sBAAsB,CAAC;CAuFnC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Интерфейсы сервисов для модуля чат-API
|
|
3
|
+
*/
|
|
4
|
+
import { ChatMessage, ChatOptions, ChatResponse, ChatStreamChunk, ChatStreamOptions, ThinkingStreamResponse, WebSocketConnectResponse, EventHandler } from './models';
|
|
5
|
+
/**
|
|
6
|
+
* Интерфейс сервиса чата
|
|
7
|
+
*/
|
|
8
|
+
export interface ChatService {
|
|
9
|
+
/**
|
|
10
|
+
* Отправляет сообщение в чат и получает ответ от модели
|
|
11
|
+
*/
|
|
12
|
+
chat(messages: ChatMessage[], options?: ChatOptions): Promise<ChatResponse>;
|
|
13
|
+
/**
|
|
14
|
+
* Алиас для метода chat для совместимости с другими SDK
|
|
15
|
+
*/
|
|
16
|
+
chatCompletion(messages: ChatMessage[], options?: ChatOptions): Promise<ChatResponse>;
|
|
17
|
+
/**
|
|
18
|
+
* Проверяет доступность API чата
|
|
19
|
+
*/
|
|
20
|
+
checkAvailability(): Promise<boolean>;
|
|
21
|
+
/**
|
|
22
|
+
* Отправляет сообщение в чат и получает ответ от модели
|
|
23
|
+
* с автоматическим переключением между регионами при ошибках перегрузки
|
|
24
|
+
*/
|
|
25
|
+
chatWithRegionFailover(messages: ChatMessage[], options?: ChatOptions): Promise<ChatResponse>;
|
|
26
|
+
/**
|
|
27
|
+
* Отправляет одиночный запрос к модели с автоматическим переключением регионов
|
|
28
|
+
*/
|
|
29
|
+
sendPromptWithRegionFailover(prompt: string, options?: ChatOptions): Promise<string>;
|
|
30
|
+
/**
|
|
31
|
+
* Отправляет сообщение в чат в потоковом режиме
|
|
32
|
+
*/
|
|
33
|
+
streamChat(messages: ChatMessage[], options?: ChatStreamOptions): AsyncGenerator<ChatStreamChunk>;
|
|
34
|
+
/**
|
|
35
|
+
* Отправляет запрос к модели в потоковом режиме (упрощенный интерфейс)
|
|
36
|
+
*/
|
|
37
|
+
streamPrompt(prompt: string, options?: ChatStreamOptions): AsyncGenerator<ChatStreamChunk>;
|
|
38
|
+
/**
|
|
39
|
+
* Создает новое WebSocket соединение для потокового чата
|
|
40
|
+
*/
|
|
41
|
+
connectWebSocket(): Promise<WebSocketConnectResponse>;
|
|
42
|
+
/**
|
|
43
|
+
* Отправляет сообщение в чат в потоковом режиме с поддержкой thinking через WebSocket
|
|
44
|
+
*/
|
|
45
|
+
streamChatWithThinking(messages: ChatMessage[], options?: ChatStreamOptions, onEvent?: EventHandler): Promise<ThinkingStreamResponse>;
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=interfaces.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../../src/api/chat-api/interfaces.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EACL,WAAW,EACX,WAAW,EACX,YAAY,EACZ,eAAe,EACf,iBAAiB,EACjB,sBAAsB,EACtB,wBAAwB,EACxB,YAAY,EACb,MAAM,UAAU,CAAC;AAElB;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IAE5E;;OAEG;IACH,cAAc,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IAEtF;;OAEG;IACH,iBAAiB,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAEtC;;;OAGG;IACH,sBAAsB,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IAE9F;;OAEG;IACH,4BAA4B,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAErF;;OAEG;IACH,UAAU,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,cAAc,CAAC,eAAe,CAAC,CAAC;IAElG;;OAEG;IACH,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,cAAc,CAAC,eAAe,CAAC,CAAC;IAE3F;;OAEG;IACH,gBAAgB,IAAI,OAAO,CAAC,wBAAwB,CAAC,CAAC;IAEtD;;OAEG;IACH,sBAAsB,CACpB,QAAQ,EAAE,WAAW,EAAE,EACvB,OAAO,CAAC,EAAE,iBAAiB,EAC3B,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,sBAAsB,CAAC,CAAC;CACpC"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Модели данных для чат-API
|
|
3
|
+
*/
|
|
2
4
|
/**
|
|
3
5
|
* Сообщение в чате
|
|
4
6
|
*/
|
|
@@ -91,6 +93,10 @@ export interface ChatStreamOptions extends ChatOptions {
|
|
|
91
93
|
onComplete?: (text: string) => void;
|
|
92
94
|
/** Обработчик ошибок */
|
|
93
95
|
onError?: (error: Error) => void;
|
|
96
|
+
/** Токен авторизации для WebSocket соединения */
|
|
97
|
+
authToken?: string;
|
|
98
|
+
/** ID сессии для отслеживания контекста между запросами */
|
|
99
|
+
sessionId?: string;
|
|
94
100
|
}
|
|
95
101
|
/**
|
|
96
102
|
* Ответ на запрос инициализации WebSocket соединения
|
|
@@ -127,76 +133,7 @@ export interface ThinkingStreamResponse {
|
|
|
127
133
|
thinking: boolean;
|
|
128
134
|
}
|
|
129
135
|
/**
|
|
130
|
-
*
|
|
136
|
+
* Тип обработчика событий
|
|
131
137
|
*/
|
|
132
|
-
export
|
|
133
|
-
|
|
134
|
-
private readonly httpClient;
|
|
135
|
-
/**
|
|
136
|
-
* Создает новый экземпляр API для работы с чатом
|
|
137
|
-
* @param {HttpClient} httpClient HTTP клиент
|
|
138
|
-
*/
|
|
139
|
-
constructor(httpClient: HttpClient);
|
|
140
|
-
/**
|
|
141
|
-
* Отправляет сообщение в чат и получает ответ от модели
|
|
142
|
-
* @param {ChatMessage[]} messages Массив сообщений для отправки
|
|
143
|
-
* @param {ChatOptions} [options] Дополнительные параметры
|
|
144
|
-
* @returns {Promise<ChatResponse>} Ответ модели
|
|
145
|
-
*/
|
|
146
|
-
chat(messages: ChatMessage[], options?: ChatOptions): Promise<ChatResponse>;
|
|
147
|
-
/**
|
|
148
|
-
* Алиас для метода chat для совместимости с другими SDK
|
|
149
|
-
* @param {ChatMessage[]} messages Массив сообщений для отправки
|
|
150
|
-
* @param {ChatOptions} [options] Дополнительные параметры
|
|
151
|
-
* @returns {Promise<ChatResponse>} Ответ модели
|
|
152
|
-
*/
|
|
153
|
-
chatCompletion(messages: ChatMessage[], options?: ChatOptions): Promise<ChatResponse>;
|
|
154
|
-
/**
|
|
155
|
-
* Проверяет доступность API чата
|
|
156
|
-
* @returns {Promise<boolean>} Результат проверки
|
|
157
|
-
*/
|
|
158
|
-
checkAvailability(): Promise<boolean>;
|
|
159
|
-
/**
|
|
160
|
-
* Отправляет сообщение в чат и получает ответ от модели
|
|
161
|
-
* с автоматическим переключением между регионами при ошибках перегрузки
|
|
162
|
-
* @param {ChatMessage[]} messages Массив сообщений для отправки
|
|
163
|
-
* @param {ChatOptions} [options] Дополнительные параметры
|
|
164
|
-
* @returns {Promise<ChatResponse>} Ответ модели
|
|
165
|
-
*/
|
|
166
|
-
chatWithRegionFailover(messages: ChatMessage[], options?: ChatOptions): Promise<ChatResponse>;
|
|
167
|
-
/**
|
|
168
|
-
* Отправляет одиночный запрос к модели с автоматическим переключением регионов
|
|
169
|
-
* @param {string} prompt Запрос к модели
|
|
170
|
-
* @param {ChatOptions} [options] Дополнительные параметры
|
|
171
|
-
* @returns {Promise<string>} Текстовый ответ модели
|
|
172
|
-
*/
|
|
173
|
-
sendPromptWithRegionFailover(prompt: string, options?: ChatOptions): Promise<string>;
|
|
174
|
-
/**
|
|
175
|
-
* Отправляет сообщение в чат в потоковом режиме
|
|
176
|
-
* @param {ChatMessage[]} messages Массив сообщений для отправки
|
|
177
|
-
* @param {ChatStreamOptions} [options] Дополнительные параметры
|
|
178
|
-
* @returns {AsyncGenerator<ChatStreamChunk>} Асинхронный генератор чанков ответа
|
|
179
|
-
*/
|
|
180
|
-
streamChat(messages: ChatMessage[], options?: ChatStreamOptions): AsyncGenerator<ChatStreamChunk>;
|
|
181
|
-
/**
|
|
182
|
-
* Отправляет запрос к модели в потоковом режиме (упрощенный интерфейс)
|
|
183
|
-
* @param {string} prompt Запрос к модели
|
|
184
|
-
* @param {ChatStreamOptions} [options] Дополнительные параметры
|
|
185
|
-
* @returns {AsyncGenerator<ChatStreamChunk>} Асинхронный генератор чанков ответа
|
|
186
|
-
*/
|
|
187
|
-
streamPrompt(prompt: string, options?: ChatStreamOptions): AsyncGenerator<ChatStreamChunk>;
|
|
188
|
-
/**
|
|
189
|
-
* Создает новое WebSocket соединение для потокового чата
|
|
190
|
-
* @returns {Promise<WebSocketConnectResponse>} Информация о созданном соединении
|
|
191
|
-
*/
|
|
192
|
-
connectWebSocket(): Promise<WebSocketConnectResponse>;
|
|
193
|
-
/**
|
|
194
|
-
* Отправляет сообщение в чат в потоковом режиме с поддержкой thinking через WebSocket
|
|
195
|
-
* @param {ChatMessage[]} messages Массив сообщений для отправки
|
|
196
|
-
* @param {ChatStreamOptions} [options] Дополнительные параметры
|
|
197
|
-
* @param {(eventType: string, data: any) => void} [onEvent] Обработчик событий WebSocket
|
|
198
|
-
* @returns {Promise<ThinkingStreamResponse>} Информация о потоковом запросе
|
|
199
|
-
*/
|
|
200
|
-
streamChatWithThinking(messages: ChatMessage[], options?: ChatStreamOptions, onEvent?: (eventType: string, data: any) => void): Promise<ThinkingStreamResponse>;
|
|
201
|
-
}
|
|
202
|
-
//# sourceMappingURL=chat-api.d.ts.map
|
|
138
|
+
export type EventHandler = (eventName: string, eventData: any) => void;
|
|
139
|
+
//# sourceMappingURL=models.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../../../src/api/chat-api/models.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Утилиты для обработки потоковых данных от API моделей ИИ
|
|
3
|
+
*
|
|
4
|
+
* Этот модуль отвечает за обработку потока событий в формате SSE (Server-Sent Events),
|
|
5
|
+
* который приходит от API моделей искусственного интеллекта (Anthropic Claude).
|
|
6
|
+
*
|
|
7
|
+
* Поток данных:
|
|
8
|
+
* 1. API моделей отправляет события в формате SSE с префиксом 'data:'
|
|
9
|
+
* 2. События обрабатываются построчно в функции processStreamChunk
|
|
10
|
+
* 3. Выделяются типы событий: content_block_*
|
|
11
|
+
* 4. Все события преобразуются в структурированный формат ChatStreamChunk
|
|
12
|
+
* 5. Содержимое блоков мышления и основного текста накапливается отдельно
|
|
13
|
+
* 6. Ошибки потока обрабатываются с дополнительной логикой для геоограничений API
|
|
14
|
+
*/
|
|
15
|
+
import { ChatStreamChunk } from './models';
|
|
16
|
+
/**
|
|
17
|
+
* Обрабатывает чанк данных из потока SSE
|
|
18
|
+
*/
|
|
19
|
+
export declare function processStreamChunk(line: string, isInThinkingBlock: boolean, thinkingContent: string, textContent: string, thinkingSignature: string, onToken?: (token: string) => void): {
|
|
20
|
+
isInThinkingBlock: boolean;
|
|
21
|
+
thinkingContent: string;
|
|
22
|
+
textContent: string;
|
|
23
|
+
thinkingSignature: string;
|
|
24
|
+
chunk?: ChatStreamChunk;
|
|
25
|
+
isDone: boolean;
|
|
26
|
+
};
|
|
27
|
+
/**
|
|
28
|
+
* Обрабатывает ошибку из потока
|
|
29
|
+
*/
|
|
30
|
+
export declare function handleStreamError(error: any): Error;
|
|
31
|
+
//# sourceMappingURL=stream-utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stream-utils.d.ts","sourceRoot":"","sources":["../../../../src/api/chat-api/stream-utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAE3C;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,MAAM,EACZ,iBAAiB,EAAE,OAAO,EAC1B,eAAe,EAAE,MAAM,EACvB,WAAW,EAAE,MAAM,EACnB,iBAAiB,EAAE,MAAM,EACzB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAChC;IACD,iBAAiB,EAAE,OAAO,CAAC;IAC3B,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,KAAK,CAAC,EAAE,eAAe,CAAC;IACxB,MAAM,EAAE,OAAO,CAAC;CACjB,CAkLA;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,CAuBnD"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Вспомогательные функции для работы с WebSocket в чат-API
|
|
3
|
+
*/
|
|
4
|
+
import { Socket } from 'socket.io-client';
|
|
5
|
+
import { EventHandler } from './models';
|
|
6
|
+
/**
|
|
7
|
+
* Настраивает обработчики событий для WebSocket
|
|
8
|
+
*/
|
|
9
|
+
export declare function setupSocketEventHandlers(socket: any, socketId: string, sessionId: string, onEvent?: EventHandler): void;
|
|
10
|
+
/**
|
|
11
|
+
* Генерирует случайный ID указанной длины
|
|
12
|
+
*/
|
|
13
|
+
export declare function generateId(length: number): string;
|
|
14
|
+
/**
|
|
15
|
+
* Создает обработчик WebSocket событий для работы с API Anthropic
|
|
16
|
+
* @param socket Socket.io сокет
|
|
17
|
+
* @param options Опции обработчика
|
|
18
|
+
* @returns Функция отписки от событий
|
|
19
|
+
*/
|
|
20
|
+
export declare function createWebSocketEventHandler(socket: Socket, options: {
|
|
21
|
+
onMessageStart?: (data: any) => void;
|
|
22
|
+
onContentBlockStart?: (data: any) => void;
|
|
23
|
+
onContentBlockDelta?: (data: any) => void;
|
|
24
|
+
onContentBlockStop?: (data: any) => void;
|
|
25
|
+
onMessageDelta?: (data: any) => void;
|
|
26
|
+
onMessageStop?: (data: any) => void;
|
|
27
|
+
onThinking?: (thinking: string) => void;
|
|
28
|
+
onText?: (text: string) => void;
|
|
29
|
+
onInputJson?: (jsonData: string) => void;
|
|
30
|
+
onSignature?: (signature: string) => void;
|
|
31
|
+
onError?: (error: any) => void;
|
|
32
|
+
onDone?: () => void;
|
|
33
|
+
}): () => void;
|
|
34
|
+
/**
|
|
35
|
+
* Нормализует имя события для совместимости с API Anthropic
|
|
36
|
+
* @param eventName Имя события
|
|
37
|
+
* @returns Нормализованное имя события
|
|
38
|
+
*/
|
|
39
|
+
export declare function normalizeEventName(eventName: string): string;
|
|
40
|
+
//# sourceMappingURL=websocket-helpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"websocket-helpers.d.ts","sourceRoot":"","sources":["../../../../src/api/chat-api/websocket-helpers.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAM,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAGxC;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,GAAG,EACX,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,YAAY,GACrB,IAAI,CAwGN;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAOjD;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE;IACP,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IACrC,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IAC1C,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IAC1C,kBAAkB,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IACzC,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IACrC,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IACpC,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,WAAW,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,WAAW,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IAC/B,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACrB,cA0FF;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAW5D"}
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
import { HttpClient } from '../utils/http-client.js';
|
|
2
2
|
import { Project, IndexingResponse, FileIndexResponse, ProjectOptions, ProjectUpdateData } from '../types/index.js';
|
|
3
|
+
declare global {
|
|
4
|
+
var solverSdkProjectCache: Record<string, string> | undefined;
|
|
5
|
+
}
|
|
3
6
|
/**
|
|
4
7
|
* Константы для API путей
|
|
5
8
|
*/
|
|
@@ -66,9 +69,19 @@ export declare class ProjectsApi {
|
|
|
66
69
|
/**
|
|
67
70
|
* Запускает индексацию проекта
|
|
68
71
|
* @param {string} projectId ID проекта
|
|
72
|
+
* @param {Object} [options] Опции индексации
|
|
73
|
+
* @param {string} [options.indexingMode] Режим индексации: 'full', 'incremental', 'auto'
|
|
74
|
+
* @param {boolean} [options.forceFull] Принудительная полная индексация
|
|
75
|
+
* @param {string[]} [options.includePatterns] Паттерны для включения файлов
|
|
76
|
+
* @param {string[]} [options.excludePatterns] Паттерны для исключения файлов
|
|
69
77
|
* @returns {Promise<IndexingResponse>} Информация о начатой индексации
|
|
70
78
|
*/
|
|
71
|
-
indexProject(projectId: string
|
|
79
|
+
indexProject(projectId: string, options?: {
|
|
80
|
+
indexingMode?: 'full' | 'incremental' | 'auto';
|
|
81
|
+
forceFull?: boolean;
|
|
82
|
+
includePatterns?: string[];
|
|
83
|
+
excludePatterns?: string[];
|
|
84
|
+
}): Promise<IndexingResponse>;
|
|
72
85
|
/**
|
|
73
86
|
* Получает статус индексации проекта
|
|
74
87
|
* @param {string} projectId Идентификатор проекта
|
|
@@ -94,11 +107,15 @@ export declare class ProjectsApi {
|
|
|
94
107
|
* @param {Object} options Опции обновления индекса
|
|
95
108
|
* @param {string} [options.content] Содержимое файла (если не указано, будет прочитано с диска)
|
|
96
109
|
* @param {boolean} [options.force=false] Принудительная переиндексация, даже если файл не изменился
|
|
110
|
+
* @param {string} [options.language] Язык файла (если не указан, будет определен автоматически)
|
|
111
|
+
* @param {boolean} [options.updateDependencies=false] Обновлять зависимости после индексации файла
|
|
97
112
|
* @returns {Promise<FileIndexResponse>} Информация об обновленном индексе файла
|
|
98
113
|
*/
|
|
99
114
|
updateFileIndex(projectId: string, filePath: string, options?: {
|
|
100
115
|
content?: string;
|
|
101
116
|
force?: boolean;
|
|
117
|
+
language?: string;
|
|
118
|
+
updateDependencies?: boolean;
|
|
102
119
|
}): Promise<FileIndexResponse>;
|
|
103
120
|
/**
|
|
104
121
|
* Подключается к WebSocket для событий индексации
|
|
@@ -146,5 +163,101 @@ export declare class ProjectsApi {
|
|
|
146
163
|
* @returns {Promise<boolean>} Результат операции
|
|
147
164
|
*/
|
|
148
165
|
stopIndexing(projectId: string): Promise<boolean>;
|
|
166
|
+
/**
|
|
167
|
+
* Кэширует соответствие пути и ID проекта
|
|
168
|
+
* @param path Путь к проекту
|
|
169
|
+
* @param projectId ID проекта
|
|
170
|
+
* @private
|
|
171
|
+
*/
|
|
172
|
+
private cacheProjectId;
|
|
173
|
+
/**
|
|
174
|
+
* Получает ID проекта из кэша
|
|
175
|
+
* @param path Путь к проекту
|
|
176
|
+
* @returns ID проекта или null, если не найдено
|
|
177
|
+
* @private
|
|
178
|
+
*/
|
|
179
|
+
private getCachedProjectId;
|
|
180
|
+
/**
|
|
181
|
+
* Получает или создает проект по пути
|
|
182
|
+
* @param path Путь к проекту
|
|
183
|
+
* @param name Имя проекта (опционально, если не указано - будет сгенерировано из пути)
|
|
184
|
+
* @returns Данные проекта
|
|
185
|
+
*/
|
|
186
|
+
getOrCreateProject(path: string, name?: string): Promise<Project>;
|
|
187
|
+
/**
|
|
188
|
+
* Индексация проекта по пути
|
|
189
|
+
* @param path Путь к проекту
|
|
190
|
+
* @param options Опции индексации
|
|
191
|
+
* @returns Информация об индексации
|
|
192
|
+
*/
|
|
193
|
+
indexProjectByPath(path: string, options?: {
|
|
194
|
+
name?: string;
|
|
195
|
+
forceFull?: boolean;
|
|
196
|
+
excludePatterns?: string[];
|
|
197
|
+
}): Promise<{
|
|
198
|
+
success: boolean;
|
|
199
|
+
status: string;
|
|
200
|
+
projectId: string;
|
|
201
|
+
}>;
|
|
202
|
+
/**
|
|
203
|
+
* Создание и индексация проекта в одной операции
|
|
204
|
+
* @param path Путь к проекту
|
|
205
|
+
* @param options Опции создания и индексации
|
|
206
|
+
* @param {string} [options.name] Имя проекта (если не указано, будет получено из пути)
|
|
207
|
+
* @param {boolean} [options.forceFull=false] Принудительная полная индексация
|
|
208
|
+
* @param {string} [options.indexingMode] Режим индексации: 'full', 'incremental', 'auto'
|
|
209
|
+
* @param {string[]} [options.includePatterns] Паттерны для включения файлов
|
|
210
|
+
* @param {string[]} [options.excludePatterns] Паттерны для исключения файлов
|
|
211
|
+
* @returns Информация о созданном проекте и начатой индексации
|
|
212
|
+
*/
|
|
213
|
+
createAndIndexProject(path: string, options?: {
|
|
214
|
+
name?: string;
|
|
215
|
+
forceFull?: boolean;
|
|
216
|
+
indexingMode?: 'full' | 'incremental' | 'auto';
|
|
217
|
+
includePatterns?: string[];
|
|
218
|
+
excludePatterns?: string[];
|
|
219
|
+
}): Promise<{
|
|
220
|
+
projectId: string;
|
|
221
|
+
indexingStatus: string;
|
|
222
|
+
}>;
|
|
223
|
+
/**
|
|
224
|
+
* Проверяет существование проекта и создает резервную копию при необходимости
|
|
225
|
+
* @param projectId ID проекта для проверки
|
|
226
|
+
* @param options Опции для создания резервной копии
|
|
227
|
+
* @returns Существующий проект или созданную резервную копию
|
|
228
|
+
*/
|
|
229
|
+
ensureProjectExists(projectId: string, options?: {
|
|
230
|
+
createBackup?: boolean;
|
|
231
|
+
backupPath?: string;
|
|
232
|
+
backupName?: string;
|
|
233
|
+
}): Promise<Project>;
|
|
234
|
+
/**
|
|
235
|
+
* Получает или создает проект по пути с расширенными опциями
|
|
236
|
+
* @param path Путь к проекту
|
|
237
|
+
* @param options Дополнительные опции
|
|
238
|
+
* @returns Найденный или созданный проект
|
|
239
|
+
*/
|
|
240
|
+
getOrCreateProjectByPath(path: string, options?: {
|
|
241
|
+
name?: string;
|
|
242
|
+
preferExisting?: boolean;
|
|
243
|
+
indexingTimeout?: number;
|
|
244
|
+
maxFileSize?: number;
|
|
245
|
+
}): Promise<Project>;
|
|
246
|
+
/**
|
|
247
|
+
* Запускает индексацию проекта (псевдоним для indexProject)
|
|
248
|
+
* @param {string} projectId ID проекта
|
|
249
|
+
* @param {Object} [options] Опции индексации
|
|
250
|
+
* @param {string} [options.indexingMode] Режим индексации: 'full', 'incremental', 'auto'
|
|
251
|
+
* @param {boolean} [options.forceFull] Принудительная полная индексация
|
|
252
|
+
* @param {string[]} [options.includePatterns] Паттерны для включения файлов
|
|
253
|
+
* @param {string[]} [options.excludePatterns] Паттерны для исключения файлов
|
|
254
|
+
* @returns {Promise<IndexingResponse>} Информация о начатой индексации
|
|
255
|
+
*/
|
|
256
|
+
startIndexing(projectId: string, options?: {
|
|
257
|
+
indexingMode?: 'full' | 'incremental' | 'auto';
|
|
258
|
+
forceFull?: boolean;
|
|
259
|
+
includePatterns?: string[];
|
|
260
|
+
excludePatterns?: string[];
|
|
261
|
+
}): Promise<IndexingResponse>;
|
|
149
262
|
}
|
|
150
263
|
//# sourceMappingURL=projects-api.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projects-api.d.ts","sourceRoot":"","sources":["../../../src/api/projects-api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EACL,OAAO,
|
|
1
|
+
{"version":3,"file":"projects-api.d.ts","sourceRoot":"","sources":["../../../src/api/projects-api.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,13 +4,14 @@ import { SearchApi } from './api/search-api.js';
|
|
|
4
4
|
import { ContextApi } from './api/context-api.js';
|
|
5
5
|
import { ReasoningApi } from './api/reasoning-api.js';
|
|
6
6
|
import { CodeModificationApi } from './api/code-modification-api.js';
|
|
7
|
-
import { CodeSolverWebSocketClient
|
|
7
|
+
import { CodeSolverWebSocketClient } from './utils/code-solver-websocket-client.js';
|
|
8
8
|
import { AgentsApi } from './api/agents-api.js';
|
|
9
|
-
import { ChatApi } from './api/chat-api.js';
|
|
9
|
+
import { ChatApi } from './api/chat-api/index.js';
|
|
10
10
|
import { CodeSolverSDKOptions } from './interfaces/sdk-options.js';
|
|
11
11
|
import { ModelsApi } from './api/models-api.js';
|
|
12
12
|
import { DependenciesApi } from './api/dependencies-api.js';
|
|
13
13
|
import { ReasoningOptions } from './api/reasoning-api.js';
|
|
14
|
+
import { AnthropicStreamCallbacks } from './interfaces/websocket/callbacks.interfaces.js';
|
|
14
15
|
/**
|
|
15
16
|
* Основной класс SDK для работы с Code Solver API
|
|
16
17
|
* Поддерживает работу как в браузере, так и в Node.js
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"code-solver-sdk.d.ts","sourceRoot":"","sources":["../../src/code-solver-sdk.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,EAAE,yBAAyB,
|
|
1
|
+
{"version":3,"file":"code-solver-sdk.d.ts","sourceRoot":"","sources":["../../src/code-solver-sdk.ts"],"names":[],"mappings":"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"}
|