solver-sdk 6.0.0 → 6.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,169 +1,51 @@
1
1
  "use strict";
2
2
  /**
3
- * 🚀 Indexing API - управление индексацией проектов
3
+ * 🚨 АРХИТЕКТУРНАЯ ОШИБКА: IndexingApi удален!
4
4
  *
5
- * Предоставляет методы для запуска, остановки и мониторинга
6
- * индексации проектов, а также получения статуса.
7
- */
8
- Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.IndexingApi = void 0;
10
- /**
11
- * API для управления индексацией проектов
5
+ * Backend SDK не должен работать с файловыми путями!
6
+ * Вся логика индексации перенесена в Projects API.
12
7
  *
13
- * @example
14
- * ```javascript
15
- * // Создание и индексация проекта
16
- * const result = await sdk.indexing.indexProject('/path/to/project', 'My Project');
17
- * console.log('Project ID:', result.projectId);
8
+ * ✅ ИСПОЛЬЗУЙТЕ вместо этого:
18
9
  *
19
- * // Получение статуса индексации
20
- * const status = await sdk.indexing.getStatus(result.projectId);
21
- * console.log('Progress:', status.progress);
10
+ * ```typescript
11
+ * // Создание проекта Client Extension):
12
+ * const project = await sdk.projects.createProject('My Project', {
13
+ * description: 'Описание проекта'
14
+ * });
22
15
  *
23
- * // Ожидание завершения индексации
24
- * const finalStatus = await sdk.indexing.waitForCompletion(result.projectId);
25
- * console.log('Final status:', finalStatus.status);
16
+ * // Получение статуса индексации:
17
+ * const status = await sdk.projects.getIndexingStatus(project.id);
26
18
  *
27
- * // Отмена индексации
28
- * await sdk.indexing.cancelIndexing(result.projectId);
19
+ * // Отмена индексации:
20
+ * await sdk.projects.cancelIndexing(project.id);
21
+ *
22
+ * // Real-time статус через WebSocket:
23
+ * await sdk.connectProjectSync(project.id);
24
+ * sdk.onSyncProgress((progress) => {
25
+ * console.log('Progress:', progress.percentage);
26
+ * });
29
27
  * ```
30
28
  */
29
+ Object.defineProperty(exports, "__esModule", { value: true });
30
+ exports.IndexingApi = void 0;
31
31
  class IndexingApi {
32
- constructor(httpClient) {
33
- this.httpClient = httpClient;
34
- }
35
- /**
36
- * Создает проект и запускает его индексацию
37
- *
38
- * @param {string} projectPath Путь к проекту (для совместимости с тестами)
39
- * @param {string} projectName Имя проекта
40
- * @param {string} [description] Описание проекта
41
- * @returns {Promise<IndexProjectResult>} Результат создания проекта
42
- */
43
- async indexProject(projectPath, projectName, description) {
44
- // Создаем проект
45
- const createRequest = {
46
- name: projectName,
47
- description: description || `Проект из ${projectPath}`
48
- };
49
- const project = await this.httpClient.post('/api/v1/projects', createRequest);
50
- // Запускаем индексацию
51
- const indexingResult = await this.httpClient.post(`/api/v1/projects/${project.id}/index`);
52
- return {
53
- projectId: project.id,
54
- name: project.name,
55
- status: indexingResult.status || 'started',
56
- message: indexingResult.message || 'Индексация запущена'
57
- };
58
- }
59
- /**
60
- * Получает текущий статус индексации проекта
61
- *
62
- * ⚠️ ВАЖНО: Для real-time уведомлений используйте WebSocket:
63
- * ```typescript
64
- * // Правильно (real-time):
65
- * await sdk.connectWebSocket();
66
- * sdk.projectSync.on('sync-status-update', (status) => {
67
- * console.log('Статус обновлен:', status);
68
- * });
69
- *
70
- * // Неправильно (не делайте polling):
71
- * // setInterval(() => sdk.indexing.getStatus(id), 2000); // ❌
72
- * ```
73
- *
74
- * @param {string} projectId ID проекта
75
- * @returns {Promise<IndexingStatus>} Текущий статус индексации
76
- */
77
- async getStatus(projectId) {
78
- this.validateProjectId(projectId);
79
- const status = await this.httpClient.get(`/api/v1/projects/${projectId}/indexing-status`);
80
- return {
81
- status: status.status || 'unknown',
82
- progress: status.progress || 0,
83
- totalFiles: status.totalFiles,
84
- processedFiles: status.processedFiles,
85
- currentFile: status.currentFile,
86
- error: status.error,
87
- updatedAt: new Date().toISOString()
88
- };
89
- }
90
- /**
91
- * ⚠️ DEPRECATED: Метод отключен. Используйте WebSocket для real-time уведомлений
92
- *
93
- * @deprecated Используйте WebSocket подход:
94
- * ```typescript
95
- * await sdk.connectWebSocket();
96
- * sdk.projectSync.on('sync-status-update', (status) => {
97
- * if (status.status === 'completed') {
98
- * console.log('Индексация завершена!');
99
- * }
100
- * });
101
- * sdk.projectSync.subscribeToProject(projectId);
102
- * ```
103
- *
104
- * @param {string} projectId ID проекта
105
- * @param {number} [timeout=300000] Таймаут в миллисекундах
106
- * @returns {Promise<IndexingStatus>} Бросает ошибку
107
- */
108
- async waitForCompletion(projectId, timeout = 300000) {
109
- throw new Error('❌ waitForCompletion() ОТКЛЮЧЕН для предотвращения polling.\n\n' +
110
- '✅ ИСПОЛЬЗУЙТЕ WebSocket для real-time уведомлений:\n\n' +
111
- 'await sdk.connectWebSocket();\n' +
112
- 'sdk.projectSync.on(\'sync-status-update\', (status) => {\n' +
113
- ' if (status.status === \'completed\') {\n' +
114
- ' console.log(\'Индексация завершена!\');\n' +
115
- ' }\n' +
116
- '});\n' +
117
- 'sdk.projectSync.subscribeToProject(projectId);\n\n' +
118
- '📖 Подробнее: https://docs.codesolver.dev/websocket');
119
- }
120
- /**
121
- * Отменяет текущую индексацию проекта
122
- *
123
- * @param {string} projectId ID проекта
124
- * @returns {Promise<void>}
125
- */
126
- async cancelIndexing(projectId) {
127
- this.validateProjectId(projectId);
128
- await this.httpClient.post(`/api/v1/projects/${projectId}/cancel-indexing`);
129
- }
130
- /**
131
- * Перезапускает индексацию проекта
132
- *
133
- * @param {string} projectId ID проекта
134
- * @returns {Promise<IndexingStatus>} Статус после перезапуска
135
- */
136
- async restartIndexing(projectId) {
137
- this.validateProjectId(projectId);
138
- // Сначала отменяем текущую индексацию
139
- try {
140
- await this.cancelIndexing(projectId);
141
- }
142
- catch (error) {
143
- // Игнорируем ошибки отмены - возможно индексация уже завершена
144
- }
145
- // Запускаем новую индексацию
146
- const result = await this.httpClient.post(`/api/v1/projects/${projectId}/index`);
147
- return {
148
- status: result.status || 'started',
149
- progress: 0,
150
- updatedAt: new Date().toISOString()
151
- };
152
- }
153
- /**
154
- * Валидация ID проекта
155
- * @private
156
- */
157
- validateProjectId(projectId) {
158
- if (projectId === undefined || projectId === null) {
159
- throw new Error('Project ID is required');
160
- }
161
- if (typeof projectId !== 'string') {
162
- throw new Error('Project ID must be a string');
163
- }
164
- if (projectId.trim().length === 0) {
165
- throw new Error('Project ID cannot be empty');
166
- }
32
+ constructor() {
33
+ throw new Error(`
34
+ 🚨 АРХИТЕКТУРНАЯ ОШИБКА: IndexingApi недоступен!
35
+
36
+ Backend SDK не должен работать с файловыми путями.
37
+
38
+ ИСПОЛЬЗУЙТЕ Projects API:
39
+ - sdk.projects.createProject() - создание проекта
40
+ - sdk.projects.getIndexingStatus() - статус индексации
41
+ - sdk.projects.cancelIndexing() - отмена индексации
42
+
43
+ ИСПОЛЬЗУЙТЕ WebSocket для real-time:
44
+ - sdk.connectProjectSync() - подключение
45
+ - sdk.onSyncProgress() - прогресс индексации
46
+
47
+ 📖 Документация: https://docs.codesolver.dev/projects-api
48
+ `);
167
49
  }
168
50
  }
169
51
  exports.IndexingApi = IndexingApi;
@@ -1 +1 @@
1
- {"version":3,"file":"indexing-api.js","sourceRoot":"","sources":["../../../src/api/indexing-api.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAgDH;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAa,WAAW;IAGtB,YAAY,UAAsB;QAChC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,YAAY,CAChB,WAAmB,EACnB,WAAmB,EACnB,WAAoB;QAEpB,iBAAiB;QACjB,MAAM,aAAa,GAAwB;YACzC,IAAI,EAAE,WAAW;YACjB,WAAW,EAAE,WAAW,IAAI,aAAa,WAAW,EAAE;SACvD,CAAC;QAEF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,kBAAkB,EAAE,aAAa,CAAC,CAAC;QAE9E,uBAAuB;QACvB,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,oBAAoB,OAAO,CAAC,EAAE,QAAQ,CAAC,CAAC;QAE1F,OAAO;YACL,SAAS,EAAE,OAAO,CAAC,EAAE;YACrB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,MAAM,EAAE,cAAc,CAAC,MAAM,IAAI,SAAS;YAC1C,OAAO,EAAE,cAAc,CAAC,OAAO,IAAI,qBAAqB;SACzD,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,KAAK,CAAC,SAAS,CAAC,SAAiB;QAC/B,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAElC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,oBAAoB,SAAS,kBAAkB,CAAC,CAAC;QAE1F,OAAO;YACL,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,SAAS;YAClC,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,CAAC;YAC9B,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,cAAc,EAAE,MAAM,CAAC,cAAc;YACrC,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACpC,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,KAAK,CAAC,iBAAiB,CAAC,SAAiB,EAAE,UAAkB,MAAM;QACjE,MAAM,IAAI,KAAK,CACb,gEAAgE;YAChE,wDAAwD;YACxD,iCAAiC;YACjC,4DAA4D;YAC5D,4CAA4C;YAC5C,+CAA+C;YAC/C,OAAO;YACP,OAAO;YACP,oDAAoD;YACpD,qDAAqD,CACtD,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,cAAc,CAAC,SAAiB;QACpC,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAElC,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,oBAAoB,SAAS,kBAAkB,CAAC,CAAC;IAC9E,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,eAAe,CAAC,SAAiB;QACrC,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAElC,sCAAsC;QACtC,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QACvC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,+DAA+D;QACjE,CAAC;QAED,6BAA6B;QAC7B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,oBAAoB,SAAS,QAAQ,CAAC,CAAC;QAEjF,OAAO;YACL,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,SAAS;YAClC,QAAQ,EAAE,CAAC;YACX,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACpC,CAAC;IACJ,CAAC;IAED;;;OAGG;IACK,iBAAiB,CAAC,SAAc;QACtC,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;YAClD,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAC5C,CAAC;QAED,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;QACjD,CAAC;QAED,IAAI,SAAS,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;CACF;AAjKD,kCAiKC"}
1
+ {"version":3,"file":"indexing-api.js","sourceRoot":"","sources":["../../../src/api/indexing-api.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;;;AAEH,MAAa,WAAW;IACtB;QACE,MAAM,IAAI,KAAK,CAAC;;;;;;;;;;;;;;;KAef,CAAC,CAAC;IACL,CAAC;CACF;AAnBD,kCAmBC"}