solver-sdk 5.1.0 → 5.1.3

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 (46) hide show
  1. package/README.md +264 -4
  2. package/dist/cjs/api/delta-chunking-api.js +142 -0
  3. package/dist/cjs/api/delta-chunking-api.js.map +1 -0
  4. package/dist/cjs/api/projects-api.js +94 -27
  5. package/dist/cjs/api/projects-api.js.map +1 -1
  6. package/dist/cjs/code-solver-sdk.js +96 -4
  7. package/dist/cjs/code-solver-sdk.js.map +1 -1
  8. package/dist/cjs/delta-chunking/delta-chunking-manager.js +202 -0
  9. package/dist/cjs/delta-chunking/delta-chunking-manager.js.map +1 -0
  10. package/dist/cjs/delta-chunking/delta-chunking-utils.js +315 -0
  11. package/dist/cjs/delta-chunking/delta-chunking-utils.js.map +1 -0
  12. package/dist/cjs/index.js +10 -1
  13. package/dist/cjs/index.js.map +1 -1
  14. package/dist/cjs/types/delta-chunking.js +7 -0
  15. package/dist/cjs/types/delta-chunking.js.map +1 -0
  16. package/dist/esm/api/delta-chunking-api.js +138 -0
  17. package/dist/esm/api/delta-chunking-api.js.map +1 -0
  18. package/dist/esm/api/projects-api.js +94 -27
  19. package/dist/esm/api/projects-api.js.map +1 -1
  20. package/dist/esm/code-solver-sdk.js +96 -4
  21. package/dist/esm/code-solver-sdk.js.map +1 -1
  22. package/dist/esm/delta-chunking/delta-chunking-manager.js +198 -0
  23. package/dist/esm/delta-chunking/delta-chunking-manager.js.map +1 -0
  24. package/dist/esm/delta-chunking/delta-chunking-utils.js +278 -0
  25. package/dist/esm/delta-chunking/delta-chunking-utils.js.map +1 -0
  26. package/dist/esm/index.js +6 -0
  27. package/dist/esm/index.js.map +1 -1
  28. package/dist/esm/types/delta-chunking.js +6 -0
  29. package/dist/esm/types/delta-chunking.js.map +1 -0
  30. package/dist/types/api/delta-chunking-api.d.ts +51 -0
  31. package/dist/types/api/delta-chunking-api.d.ts.map +1 -0
  32. package/dist/types/api/projects-api.d.ts +42 -0
  33. package/dist/types/api/projects-api.d.ts.map +1 -1
  34. package/dist/types/code-solver-sdk.d.ts +50 -1
  35. package/dist/types/code-solver-sdk.d.ts.map +1 -1
  36. package/dist/types/delta-chunking/delta-chunking-manager.d.ts +60 -0
  37. package/dist/types/delta-chunking/delta-chunking-manager.d.ts.map +1 -0
  38. package/dist/types/delta-chunking/delta-chunking-utils.d.ts +62 -0
  39. package/dist/types/delta-chunking/delta-chunking-utils.d.ts.map +1 -0
  40. package/dist/types/index.d.ts +4 -0
  41. package/dist/types/index.d.ts.map +1 -1
  42. package/dist/types/interfaces/sdk-options.d.ts +35 -0
  43. package/dist/types/interfaces/sdk-options.d.ts.map +1 -1
  44. package/dist/types/types/delta-chunking.d.ts +210 -0
  45. package/dist/types/types/delta-chunking.d.ts.map +1 -0
  46. package/package.json +1 -1
package/README.md CHANGED
@@ -1,12 +1,13 @@
1
- # Code Solver SDK v5.0.0
1
+ # Code Solver SDK v5.1.0
2
2
 
3
3
  > **🗑️ Ультра-чистый JavaScript/TypeScript SDK для VS Code Extensions**
4
4
  > Без legacy кода, без мертвых методов, только актуальный API
5
5
 
6
- JavaScript/TypeScript SDK для работы с Code Solver API. Предоставляет простой интерфейс для индексации кода, семантического поиска функций и работы с AI чатом.
6
+ JavaScript/TypeScript SDK для работы с Code Solver API. Предоставляет простой интерфейс для индексации кода, семантического поиска функций, работы с AI чатом и **новую Delta-Chunking архитектуру** для Cursor-подобной синхронизации проектов.
7
7
 
8
8
  ## 🎯 Основные возможности
9
9
 
10
+ - **🔄 Delta-Chunking** - Cursor-like инкрементальная синхронизация проектов
10
11
  - **💬 Chat API** - взаимодействие с AI моделями (Claude, GPT)
11
12
  - **🔍 Code Search** - семантический поиск по коду и функциям
12
13
  - **📊 Project Indexing** - индексация и анализ проектов с **богатой информацией**
@@ -15,9 +16,14 @@ JavaScript/TypeScript SDK для работы с Code Solver API. Предост
15
16
  - **🔇 Настраиваемое логирование** - полный контроль над выводом в консоль
16
17
  - **✨ Улучшенная типизация** - полные TypeScript типы с примерами и документацией
17
18
 
18
- ## 🚀 Что нового в v5.0.0
19
+ ## 🚀 Что нового в v5.1.0
19
20
 
20
- > **Чистая версия** - убраны все устаревшие методы. Только актуальный API без мертвого кода.
21
+ > **🔄 Delta-Chunking API** - добавлена полная документация для новой архитектуры синхронизации
22
+
23
+ - ✨ **Delta-Chunking интеграция** - встроено в основной CodeSolverSDK класс
24
+ - 📝 **Полная документация** - все методы, типы и примеры использования
25
+ - 🔐 **Шифрование и chunking** - конфигурация encryption и chunking опций
26
+ - 🎯 **Готово к продакшену** - интеграция с backend полностью реализована
21
27
 
22
28
  ## 📦 Установка
23
29
 
@@ -143,6 +149,171 @@ const response = await sdk.chat.chat(messages, {
143
149
  });
144
150
  ```
145
151
 
152
+ ## 🔄 Delta-Chunking API
153
+
154
+ > **🚀 Новый Cursor-подобный подход к синхронизации проектов**
155
+ > Инкрементальные обновления, шифрование, real-time статус
156
+
157
+ ### Создание SDK с Delta-Chunking
158
+
159
+ ```javascript
160
+ import { CodeSolverSDK } from 'solver-sdk';
161
+
162
+ // Создание SDK с включенным delta-chunking
163
+ const sdk = await CodeSolverSDK.create({
164
+ baseURL: 'http://localhost:3000',
165
+ apiKey: 'your-api-key',
166
+ deltaChunking: { // ✨ Опциональная секция
167
+ enabled: true, // Включить delta-chunking
168
+ encryption: {
169
+ enabled: true,
170
+ key: 'your-32-char-encryption-key-here!' // 32 символа
171
+ },
172
+ chunking: {
173
+ maxTokens: 400, // Максимальный размер чанка
174
+ minTokens: 100, // Минимальный размер чанка
175
+ useTreeSitter: false, // Пока простая разбивка
176
+ preserveContext: true // Сохранять контекст между чанками
177
+ },
178
+ fileWatching: {
179
+ enabled: false, // Автоматическое наблюдение (в разработке)
180
+ pollInterval: 1000, // Интервал проверки изменений
181
+ ignorePatterns: ['node_modules/**'] // Игнорируемые файлы
182
+ }
183
+ },
184
+ debug: 'error'
185
+ });
186
+
187
+ // Проверяем что delta-chunking включен
188
+ console.log('Delta-chunking доступен:', sdk.isDeltaChunkingEnabled);
189
+ ```
190
+
191
+ ### Синхронизация проекта
192
+
193
+ ```javascript
194
+ // Основной метод синхронизации (только если deltaChunking.enabled = true)
195
+ const result = await sdk.syncProject('project-id', '/path/to/project', {
196
+ forceFull: false, // Инкрементальная синхронизация
197
+ batchSize: 50, // Чанков за раз
198
+ ignorePatterns: [ // Игнорировать файлы/папки
199
+ 'node_modules/**',
200
+ '*.log',
201
+ '.git/**'
202
+ ],
203
+ includeExtensions: ['.ts', '.js', '.py'], // Только эти расширения
204
+ maxFileSizeKB: 1024, // Максимальный размер файла 1MB
205
+ onProgress: (current, total) => { // Callback прогресса
206
+ console.log(`Прогресс: ${current}/${total} (${Math.round(current/total*100)}%)`);
207
+ }
208
+ });
209
+
210
+ console.log(`✅ Синхронизация завершена: ${result.processedChunks} чанков`);
211
+ ```
212
+
213
+ ### Синхронизация файлов (для браузера)
214
+
215
+ ```javascript
216
+ // Для web/браузерных приложений без доступа к файловой системе
217
+ const files = [
218
+ {
219
+ path: 'src/index.ts',
220
+ content: 'console.log("Hello World");',
221
+ size: 28
222
+ },
223
+ {
224
+ path: 'src/utils.ts',
225
+ content: 'export const sum = (a, b) => a + b;',
226
+ size: 37
227
+ }
228
+ ];
229
+
230
+ const result = await sdk.syncFiles('project-id', files, {
231
+ batchSize: 20,
232
+ onProgress: (current, total) => {
233
+ console.log(`📤 Загружено: ${current}/${total}`);
234
+ }
235
+ });
236
+ ```
237
+
238
+ ### Автоматическое наблюдение за изменениями
239
+
240
+ ```javascript
241
+ // Запуск file watcher (в разработке)
242
+ const watcher = await sdk.startAutoSync('project-id', '/path/to/watch');
243
+
244
+ // Проверка активности
245
+ console.log(`👀 Auto-sync активен: ${watcher.isActive}`);
246
+
247
+ // Остановка наблюдения
248
+ await watcher.stop();
249
+ console.log('🔴 File watcher остановлен');
250
+ ```
251
+
252
+ ### Статус и управление
253
+
254
+ ```javascript
255
+ // Проверка статуса синхронизации
256
+ const status = await sdk.getSyncStatus('project-id');
257
+ console.log(`📊 Статус: ${status.status}, прогресс: ${status.progress || 0}%`);
258
+
259
+ // Отмена активной синхронизации
260
+ const cancelled = await sdk.cancelSync('project-id');
261
+ if (cancelled) {
262
+ console.log('❌ Синхронизация отменена');
263
+ }
264
+ ```
265
+
266
+ ### Полный пример workflow
267
+
268
+ ```javascript
269
+ import { CodeSolverSDK } from 'solver-sdk';
270
+
271
+ async function syncProject() {
272
+ // 1. Создание SDK
273
+ const sdk = await CodeSolverSDK.create({
274
+ baseURL: 'http://localhost:3000',
275
+ deltaChunking: {
276
+ enabled: true,
277
+ encryption: { enabled: true, key: 'my-secret-key-32-characters-long!' }
278
+ },
279
+ debug: 'info'
280
+ });
281
+
282
+ try {
283
+ // 2. Синхронизация с прогрессом
284
+ const result = await sdk.syncProject('my-project-id', './my-project', {
285
+ onProgress: (current, total) => {
286
+ const percent = Math.round((current / total) * 100);
287
+ console.log(`🔄 Синхронизация: ${percent}% (${current}/${total} чанков)`);
288
+ },
289
+ ignorePatterns: ['node_modules/**', 'dist/**', '*.log']
290
+ });
291
+
292
+ // 3. Результат
293
+ console.log('🎉 Синхронизация завершена:', {
294
+ success: result.success,
295
+ processedChunks: result.processedChunks,
296
+ duration: result.duration + 'ms',
297
+ newFiles: result.details?.newFiles,
298
+ changedFiles: result.details?.changedFiles
299
+ });
300
+
301
+ // 4. Проверка финального статуса
302
+ const status = await sdk.getSyncStatus('my-project-id');
303
+ console.log(`✅ Финальный статус: ${status.status}`);
304
+
305
+ } catch (error) {
306
+ console.error('❌ Ошибка синхронизации:', error.message);
307
+
308
+ // Отменяем если что-то пошло не так
309
+ await sdk.cancelSync('my-project-id');
310
+ }
311
+ }
312
+
313
+ // Запуск
314
+ syncProject();
315
+ ```
316
+
146
317
  ## 💡 Типы данных
147
318
 
148
319
  ### Project
@@ -161,6 +332,95 @@ interface Project {
161
332
  }
162
333
  ```
163
334
 
335
+ ### Delta-Chunking Types
336
+
337
+ ```typescript
338
+ // Расширенная конфигурация CodeSolverSDK с delta-chunking
339
+ interface CodeSolverSDKOptions {
340
+ baseURL: string;
341
+ apiKey?: string;
342
+ deltaChunking?: { // ✨ Опциональная секция
343
+ enabled: boolean; // Включение delta-chunking функциональности
344
+
345
+ encryption?: {
346
+ enabled: boolean; // Включить шифрование чанков
347
+ key: string; // 32-символьный ключ для AES-256
348
+ };
349
+
350
+ chunking?: {
351
+ maxTokens?: number; // Максимальный размер чанка (по умолчанию: 400)
352
+ minTokens?: number; // Минимальный размер чанка (по умолчанию: 100)
353
+ useTreeSitter?: boolean; // Использовать tree-sitter парсер (в разработке)
354
+ preserveContext?: boolean; // Сохранять контекст между чанками
355
+ };
356
+
357
+ fileWatching?: {
358
+ enabled: boolean; // Включить автоматическое наблюдение за изменениями
359
+ pollInterval?: number; // Интервал проверки изменений в мс (по умолчанию: 1000)
360
+ ignorePatterns?: string[]; // Паттерны для игнорирования файлов
361
+ };
362
+ };
363
+ timeout?: number; // Таймаут запросов (мс)
364
+ debug?: 'silent' | 'error' | 'warn' | 'info' | 'debug';
365
+ }
366
+
367
+ // Опции синхронизации
368
+ interface SyncOptions {
369
+ forceFull?: boolean; // Принудительная полная синхронизация
370
+ batchSize?: number; // Размер батча для загрузки чанков (по умолчанию: 50)
371
+ ignorePatterns?: string[]; // Паттерны для игнорирования файлов
372
+ includeExtensions?: string[]; // Включать только определенные расширения
373
+ maxFileSizeKB?: number; // Максимальный размер файла для обработки (KB)
374
+ onProgress?: (current: number, total: number) => void; // Callback прогресса
375
+ timeoutMs?: number; // Таймаут для операций
376
+ }
377
+
378
+ // Результат синхронизации
379
+ interface SyncResult {
380
+ success: boolean;
381
+ projectId: string;
382
+ sessionId?: string;
383
+ processedChunks: number;
384
+ totalChunks: number;
385
+ duration: number; // Время выполнения в мс
386
+ error?: string;
387
+ details?: {
388
+ newFiles: number;
389
+ changedFiles: number;
390
+ deletedFiles: number;
391
+ failedChunks: number;
392
+ };
393
+ }
394
+
395
+ // Статус синхронизации
396
+ interface SyncStatus {
397
+ status: 'inactive' | 'initializing' | 'active' | 'finalizing' | 'completed' | 'failed';
398
+ progress?: number; // 0-100%
399
+ chunksReceived?: number;
400
+ chunksProcessed?: number;
401
+ sessionId?: string;
402
+ errors?: string[];
403
+ startTime?: Date;
404
+ estimatedCompletion?: Date;
405
+ }
406
+
407
+ // File watcher для автоматической синхронизации
408
+ interface FileWatcher {
409
+ projectId: string;
410
+ watchPath: string;
411
+ isActive: boolean;
412
+ start(): Promise<void>;
413
+ stop(): Promise<void>;
414
+ }
415
+
416
+ // Контент файла
417
+ interface FileContent {
418
+ path: string; // Относительный путь файла
419
+ content: string; // Содержимое файла
420
+ size: number; // Размер в байтах
421
+ }
422
+ ```
423
+
164
424
  ## 📚 Пример использования
165
425
 
166
426
  ```javascript
@@ -0,0 +1,142 @@
1
+ "use strict";
2
+ /**
3
+ * 🚀 Delta-Chunking API клиент
4
+ * Интеграция с backend endpoints
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.DeltaChunkingApi = void 0;
8
+ /**
9
+ * API клиент для delta-chunking операций
10
+ */
11
+ class DeltaChunkingApi {
12
+ constructor(httpClient) {
13
+ this.httpClient = httpClient;
14
+ }
15
+ /**
16
+ * Инициализация синхронизации проекта
17
+ */
18
+ async initSync(projectId, request) {
19
+ const response = await this.httpClient.post(`/api/v1/projects/${projectId}/sync-init`, request);
20
+ if (!response.sessionId) {
21
+ throw new Error('Server did not return sessionId');
22
+ }
23
+ return response;
24
+ }
25
+ /**
26
+ * Отправка батча зашифрованных чанков
27
+ */
28
+ async uploadChunkBatch(projectId, batchRequest) {
29
+ const response = await this.httpClient.post(`/api/v1/projects/${projectId}/delta-chunks`, batchRequest);
30
+ return response;
31
+ }
32
+ /**
33
+ * Получение статуса синхронизации
34
+ */
35
+ async getSyncStatus(projectId) {
36
+ const response = await this.httpClient.get(`/api/v1/projects/${projectId}/sync-status`);
37
+ return {
38
+ projectId,
39
+ sessionId: response.sessionId,
40
+ status: response.status || 'idle',
41
+ progress: response.progress || 0,
42
+ chunksReceived: response.chunksReceived || 0,
43
+ chunksProcessed: response.chunksProcessed || 0,
44
+ errorCount: response.errorCount || 0,
45
+ startedAt: response.startedAt ? new Date(response.startedAt) : undefined,
46
+ completedAt: response.completedAt ? new Date(response.completedAt) : undefined,
47
+ lastActivity: response.lastActivity ? new Date(response.lastActivity) : undefined,
48
+ error: response.error
49
+ };
50
+ }
51
+ /**
52
+ * Завершение синхронизации
53
+ */
54
+ async finalizeSync(projectId) {
55
+ const response = await this.httpClient.post(`/api/v1/projects/${projectId}/sync-finalize`, {});
56
+ return {
57
+ success: response.success || false,
58
+ projectId,
59
+ sessionId: response.sessionId,
60
+ processedChunks: response.processedChunks || 0,
61
+ totalChunks: response.totalChunks || 0,
62
+ duration: response.duration || 0,
63
+ error: response.error,
64
+ details: response.details
65
+ };
66
+ }
67
+ /**
68
+ * Отмена синхронизации
69
+ */
70
+ async cancelSync(projectId) {
71
+ const response = await this.httpClient.delete(`/api/v1/projects/${projectId}/sync-cancel`);
72
+ return {
73
+ success: response.success || false,
74
+ message: response.message
75
+ };
76
+ }
77
+ /**
78
+ * Batch upload с retry логикой
79
+ */
80
+ async uploadChunksWithRetry(projectId, chunks, options = {}) {
81
+ const { batchSize = 50, maxRetries = 3, onProgress } = options;
82
+ const totalChunks = chunks.length;
83
+ const totalBatches = Math.ceil(totalChunks / batchSize);
84
+ let processedChunks = 0;
85
+ let failedChunks = 0;
86
+ const errors = [];
87
+ for (let batchIndex = 0; batchIndex < totalBatches; batchIndex++) {
88
+ const startIdx = batchIndex * batchSize;
89
+ const endIdx = Math.min(startIdx + batchSize, totalChunks);
90
+ const batchChunks = chunks.slice(startIdx, endIdx);
91
+ const batchRequest = {
92
+ batchIndex,
93
+ totalBatches,
94
+ chunks: batchChunks
95
+ };
96
+ let success = false;
97
+ let retryCount = 0;
98
+ while (!success && retryCount < maxRetries) {
99
+ try {
100
+ const result = await this.uploadChunkBatch(projectId, batchRequest);
101
+ processedChunks += result.processed;
102
+ failedChunks += result.failed;
103
+ if (result.errors) {
104
+ errors.push(...result.errors);
105
+ }
106
+ success = true;
107
+ // Уведомляем о прогрессе
108
+ if (onProgress) {
109
+ onProgress(processedChunks, totalChunks);
110
+ }
111
+ }
112
+ catch (error) {
113
+ retryCount++;
114
+ if (retryCount >= maxRetries) {
115
+ const errorMessage = error instanceof Error ? error.message : String(error);
116
+ errors.push(`Batch ${batchIndex} failed after ${maxRetries} retries: ${errorMessage}`);
117
+ failedChunks += batchChunks.length;
118
+ }
119
+ else {
120
+ // Экспоненциальная задержка перед повтором
121
+ await new Promise(resolve => setTimeout(resolve, Math.pow(2, retryCount) * 1000));
122
+ }
123
+ }
124
+ }
125
+ }
126
+ return {
127
+ success: failedChunks === 0,
128
+ projectId,
129
+ processedChunks,
130
+ totalChunks,
131
+ duration: 0, // Будет заполнено на уровне SDK
132
+ error: errors.length > 0 ? errors.join('; ') : undefined,
133
+ details: {
134
+ newFiles: 0, // Будет заполнено на уровне SDK
135
+ changedFiles: 0,
136
+ deletedFiles: 0
137
+ }
138
+ };
139
+ }
140
+ }
141
+ exports.DeltaChunkingApi = DeltaChunkingApi;
142
+ //# sourceMappingURL=delta-chunking-api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delta-chunking-api.js","sourceRoot":"","sources":["../../../src/api/delta-chunking-api.ts"],"names":[],"mappings":"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"}
@@ -76,26 +76,18 @@ class ProjectsApi {
76
76
  * @throws {Error} Если не удалось получить проекты или сервер вернул ошибку
77
77
  */
78
78
  async getAllProjects() {
79
- // 🚀 УЛУЧШЕНО: Используем новые типы ApiResponse для лучшей обработки
80
- const response = await this.httpClient.get('/api/v1/projects');
81
- if (!response.success || !response.data) {
82
- const error = response.error;
83
- throw new Error(error?.message || 'Не удалось получить проекты');
84
- }
85
- return response.data;
79
+ // HttpClient уже извлекает data из axios response, возвращая прямой массив Project[]
80
+ const projects = await this.httpClient.get('/api/v1/projects');
81
+ return projects;
86
82
  }
87
83
  /**
88
84
  * Получает список готовых к работе проектов
89
85
  * @returns {Promise<Project[]>} Список готовых проектов
90
86
  */
91
87
  async getReadyProjects() {
92
- // 🚀 УЛУЧШЕНО: Используем новые типы ApiResponse
93
- const response = await this.httpClient.get('/api/v1/projects/ready');
94
- if (!response.success || !response.data) {
95
- const error = response.error;
96
- throw new Error(error?.message || 'Не удалось получить готовые проекты');
97
- }
98
- return response.data;
88
+ // HttpClient уже извлекает data из axios response, возвращая прямой массив Project[]
89
+ const projects = await this.httpClient.get('/api/v1/projects/ready');
90
+ return projects;
99
91
  }
100
92
  /**
101
93
  * Получает детальную информацию о проекте по его ID
@@ -126,13 +118,9 @@ class ProjectsApi {
126
118
  * @throws {Error} Если проект не найден или произошла ошибка сервера
127
119
  */
128
120
  async getProject(projectId) {
129
- // 🚀 УЛУЧШЕНО: Используем новые типы ApiResponse
130
- const response = await this.httpClient.get(`/api/v1/projects/${projectId}`);
131
- if (!response.success || !response.data) {
132
- const error = response.error;
133
- throw new Error(error?.message || `Не удалось найти проект ${projectId}`);
134
- }
135
- return response.data;
121
+ // HttpClient уже извлекает data из axios response, возвращая прямой объект Project
122
+ const project = await this.httpClient.get(`/api/v1/projects/${projectId}`);
123
+ return project;
136
124
  }
137
125
  /**
138
126
  * Создает новый проект или возвращает существующий (автоматическая дедупликация)
@@ -180,12 +168,9 @@ class ProjectsApi {
180
168
  description: data.description,
181
169
  ...data
182
170
  };
183
- const response = await this.httpClient.post('/api/v1/projects', projectData);
184
- if (!response.success || !response.data) {
185
- const error = response.error;
186
- throw new Error(error?.message || `Не удалось создать проект "${name}"`);
187
- }
188
- return response.data;
171
+ // HttpClient уже извлекает data из axios response, возвращая прямой объект Project
172
+ const project = await this.httpClient.post('/api/v1/projects', projectData);
173
+ return project;
189
174
  }
190
175
  /**
191
176
  * Получает статус проекта
@@ -505,6 +490,88 @@ class ProjectsApi {
505
490
  throw new Error(`Не удалось получить или создать проект: ${error.message}`);
506
491
  }
507
492
  }
493
+ // ===== DELTA CHUNKING МЕТОДЫ =====
494
+ /**
495
+ * Инициализация синхронизации проекта для Delta Chunking
496
+ * @param projectId ID проекта
497
+ * @param request Данные для инициализации синхронизации
498
+ * @returns Результат инициализации с sessionId
499
+ */
500
+ async sendInitialSync(projectId, request) {
501
+ this.validateProjectId(projectId);
502
+ const response = await this.httpClient.post(`/api/v1/projects/${projectId}/sync-init`, request);
503
+ if (!response.sessionId) {
504
+ throw new Error('Server did not return sessionId');
505
+ }
506
+ return response;
507
+ }
508
+ /**
509
+ * Отправка батча зашифрованных чанков для Delta Chunking
510
+ * @param projectId ID проекта
511
+ * @param batchRequest Батч зашифрованных чанков
512
+ * @returns Результат обработки батча
513
+ */
514
+ async sendDeltaSync(projectId, batchRequest) {
515
+ this.validateProjectId(projectId);
516
+ const response = await this.httpClient.post(`/api/v1/projects/${projectId}/delta-chunks`, batchRequest);
517
+ return response;
518
+ }
519
+ /**
520
+ * Получение статуса синхронизации Delta Chunking
521
+ * @param projectId ID проекта
522
+ * @returns Текущий статус синхронизации
523
+ */
524
+ async getDeltaSyncStatus(projectId) {
525
+ this.validateProjectId(projectId);
526
+ const response = await this.httpClient.get(`/api/v1/projects/${projectId}/sync-status`);
527
+ return {
528
+ projectId,
529
+ sessionId: response.sessionId,
530
+ status: response.status || 'idle',
531
+ progress: response.progress || 0,
532
+ chunksReceived: response.chunksReceived || 0,
533
+ chunksProcessed: response.chunksProcessed || 0,
534
+ errorCount: response.errorCount || 0,
535
+ startedAt: response.startedAt ? new Date(response.startedAt) : undefined,
536
+ completedAt: response.completedAt ? new Date(response.completedAt) : undefined,
537
+ lastActivity: response.lastActivity ? new Date(response.lastActivity) : undefined,
538
+ error: response.error
539
+ };
540
+ }
541
+ /**
542
+ * Завершение синхронизации Delta Chunking
543
+ * @param projectId ID проекта
544
+ * @returns Результат завершения синхронизации
545
+ */
546
+ async finalizeDeltaSync(projectId) {
547
+ this.validateProjectId(projectId);
548
+ const response = await this.httpClient.post(`/api/v1/projects/${projectId}/sync-finalize`, {});
549
+ // HttpClient уже извлекает data из axios response, response - это прямой объект от backend
550
+ return {
551
+ success: response.success || false,
552
+ projectId,
553
+ sessionId: response.sessionId,
554
+ processedChunks: response.processedChunks || 0,
555
+ totalChunks: response.totalChunks || 0,
556
+ duration: response.duration || 0,
557
+ error: response.error,
558
+ details: response.details
559
+ };
560
+ }
561
+ /**
562
+ * Отмена синхронизации Delta Chunking
563
+ * @param projectId ID проекта
564
+ * @returns Результат отмены
565
+ */
566
+ async cancelDeltaSync(projectId) {
567
+ this.validateProjectId(projectId);
568
+ const response = await this.httpClient.delete(`/api/v1/projects/${projectId}/sync-cancel`);
569
+ // HttpClient уже извлекает data из axios response, response - это прямой объект от backend
570
+ return {
571
+ success: response.success || false,
572
+ message: response.message
573
+ };
574
+ }
508
575
  }
509
576
  exports.ProjectsApi = ProjectsApi;
510
577
  //# sourceMappingURL=projects-api.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"projects-api.js","sourceRoot":"","sources":["../../../src/api/projects-api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"projects-api.js","sourceRoot":"","sources":["../../../src/api/projects-api.ts"],"names":[],"mappings":";;;AAwBA;;GAEG;AACH,IAAY,YAMX;AAND,WAAY,YAAY;IACtB,6CAA6B,CAAA;IAC7B,gDAAgC,CAAA;IAChC,gFAAgE,CAAA;IAChE,gFAAgE,CAAA;IAChE,wEAAwD,CAAA;AAC1D,CAAC,EANW,YAAY,4BAAZ,YAAY,QAMvB;AAED;;;;;GAKG;AACH,SAAS,cAAc,CAAC,QAAgB,EAAE,MAA8B;IACtE,IAAI,MAAM,GAAG,QAAQ,CAAC;IACtB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAClD,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,GAAG,EAAE,EAAE,KAAK,CAAC,CAAC;IAC5C,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,MAAa,WAAW;IAItB;;;OAGG;IACH,YAAY,UAAsB;QAChC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAED;;;;OAIG;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,KAAK,EAAE,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACI,KAAK,CAAC,cAAc;QACzB,qFAAqF;QACrF,MAAM,QAAQ,GAAc,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;QAE1E,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,gBAAgB;QAC3B,qFAAqF;QACrF,MAAM,QAAQ,GAAc,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;QAEhF,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACI,KAAK,CAAC,UAAU,CAAC,SAAiB;QACvC,mFAAmF;QACnF,MAAM,OAAO,GAAY,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,oBAAoB,SAAS,EAAE,CAAC,CAAC;QAEpF,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAqCG;IACI,KAAK,CAAC,aAAa,CACxB,IAAY,EACZ,IAAY,EACZ,OAAY,EAAE;QAEd,0DAA0D;QAC1D,MAAM,WAAW,GAAqB;YACpC,IAAI;YACJ,IAAI;YACJ,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,GAAG,IAAI;SACR,CAAC;QAEF,mFAAmF;QACnF,MAAM,OAAO,GAAY,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,kBAAkB,EAAE,WAAW,CAAC,CAAC;QAErF,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,gBAAgB,CAAC,SAAiB;QAC7C,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,oBAAoB,SAAS,SAAS,CAAC,CAAC;IACrE,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,aAAa,CAAC,SAAiB,EAAE,UAA+B,EAAE;QAC7E,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,oBAAoB,SAAS,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC9E,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,aAAa,CAAC,SAAiB;QACnC,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAC;IACnF,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,iBAAiB,CAAC,SAAiB;QAC9C,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAClC,2FAA2F;QAC3F,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,oBAAoB,SAAS,kBAAkB,CAAC,CAAC;IAC9E,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,cAAc,CAAC,SAAiB;QAC3C,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAC5C,CAAC;QAED,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,uBAAuB,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;aACjG,IAAI,CAAC,QAAQ,CAAC,EAAE;YACf,OAAO,IAAI,CAAC;QACd,CAAC,CAAC;aACD,KAAK,CAAC,KAAK,CAAC,EAAE;YACb,MAAM,IAAI,KAAK,CAAC,8BAA8B,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QACjE,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,YAAY,CAAC,SAAiB;QACzC,OAAO,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;IACxC,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,kBAAkB,CAAC,SAAiB;QAC/C,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAClC,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,mBAAmB,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;aAC7F,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;aAChB,KAAK,CAAC,KAAK,CAAC,EAAE;YACb,MAAM,IAAI,KAAK,CAAC,mCAAmC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QACtE,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;;;;;;;;OAUG;IACI,KAAK,CAAC,eAAe,CAC1B,SAAiB,EACjB,QAAgB,EAChB,UAKI,EAAE;QAEN,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAElC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvD,CAAC;QAED,0EAA0E;QAC1E,MAAM,eAAe,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QAErD,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,mBAAmB,GAAG,SAAS,GAAG,SAAS,GAAG,eAAe,GAAG,QAAQ,EAAE,OAAO,CAAC,CAAC;IACjH,CAAC;IAID;;;;;OAKG;IACK,cAAc,CAAC,IAAY,EAAE,SAAiB;QACpD,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAEnE,IAAI,OAAO,YAAY,KAAK,WAAW,EAAE,CAAC;YACxC,uBAAuB;YACvB,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,uBAAuB,CAAC,IAAI,IAAI,CAAC,CAAC;YACzF,cAAc,CAAC,cAAc,CAAC,GAAG,SAAS,CAAC;YAC3C,YAAY,CAAC,OAAO,CAAC,uBAAuB,EAAE,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC;QAChF,CAAC;aAAM,IAAI,OAAO,OAAO,KAAK,WAAW,EAAE,CAAC;YAC1C,yCAAyC;YACzC,IAAI,CAAC,MAAM,CAAC,qBAAqB,EAAE,CAAC;gBAClC,MAAM,CAAC,qBAAqB,GAAG,EAAE,CAAC;YACpC,CAAC;YACD,MAAM,CAAC,qBAAqB,CAAC,cAAc,CAAC,GAAG,SAAS,CAAC;QAC3D,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAC;QACpF,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACK,kBAAkB,CAAC,IAAY;QACrC,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAEnE,IAAI,OAAO,YAAY,KAAK,WAAW,EAAE,CAAC;YACxC,uBAAuB;YACvB,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,uBAAuB,CAAC,IAAI,IAAI,CAAC,CAAC;YACzF,OAAO,cAAc,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC;QAChD,CAAC;aAAM,IAAI,OAAO,OAAO,KAAK,WAAW,IAAI,MAAM,CAAC,qBAAqB,EAAE,CAAC;YAC1E,oBAAoB;YACpB,OAAO,MAAM,CAAC,qBAAqB,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC;QAC9D,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,kBAAkB,CAAC,IAAY,EAAE,IAAa;QACzD,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACzD,CAAC;QAED,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAEnE,wBAAwB;QACxB,MAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAC;QAChE,IAAI,eAAe,EAAE,CAAC;YACpB,gFAAgF;YAChF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;YACvD,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,8CAA8C;QAC9C,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAU,kBAAkB,EAAE;YACtE,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,IAAI,IAAI,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,iBAAiB;SACnE,CAAC,CAAC;QAEH,qBAAqB;QACrB,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;QAEhD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,kBAAkB,CAC7B,IAAY,EACZ,UAII,EAAE;QAEN,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACzD,CAAC;QAED,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACnE,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,IAAI,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,iBAAiB,CAAC;QAEzF,IAAI,CAAC;YACH,kFAAkF;YAClF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,kBAAkB,EAAE;gBAC7D,IAAI,EAAE,cAAc;gBACpB,IAAI,EAAE,WAAW;aAClB,CAAC,CAAC;YAEH,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;gBAC5B,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;YAChE,CAAC;YAED,6CAA6C;YAC7C,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,oBAAoB,OAAO,CAAC,EAAE,QAAQ,EAAE;gBACxF,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,eAAe,EAAE,OAAO,CAAC,eAAe;aACzC,CAAC,CAAC;YAEH,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,MAAM,EAAE,UAAU;gBAClB,SAAS,EAAE,OAAO,CAAC,EAAE;aACtB,CAAC;QAEJ,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,+BAA+B;YAC/B,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC5E,MAAM,IAAI,KAAK,CAAC,oDAAoD,YAAY,EAAE,CAAC,CAAC;QACtF,CAAC;IACH,CAAC;IAED;;;;;;;;;;OAUG;IACI,KAAK,CAAC,qBAAqB,CAChC,IAAY,EACZ,UAMI,EAAE;QAEN,IAAI,CAAC;YACH,oEAAoE;YACpE,IAAI,cAAc,GAAQ;gBACxB,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,eAAe,EAAE,OAAO,CAAC,eAAe;aACzC,CAAC;YAEF,IAAI,OAAO,CAAC,YAAY,KAAK,MAAM,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;gBACzD,cAAc,CAAC,SAAS,GAAG,IAAI,CAAC;YAClC,CAAC;YAED,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;gBAC5B,cAAc,CAAC,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;YAC3D,CAAC;YAED,mFAAmF;YACnF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;YAEnE,gDAAgD;YAChD,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;gBACjC,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;YACjF,CAAC;YAED,OAAO;gBACL,SAAS,EAAE,MAAM,CAAC,SAAS;gBAC3B,cAAc,EAAE,MAAM,CAAC,MAAM,IAAI,UAAU;aAC5C,CAAC;QACJ,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC5E,MAAM,IAAI,KAAK,CAAC,iDAAiD,YAAY,EAAE,CAAC,CAAC;QACnF,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,mBAAmB,CAC9B,SAAiB,EACjB,UAII,EAAE;QAEN,IAAI,CAAC;YACH,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;YAElC,iCAAiC;YACjC,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;gBACjD,OAAO,OAAO,CAAC;YACjB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,gDAAgD;gBAChD,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;oBAC1B,yDAAyD;oBACzD,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBAC5E,MAAM,IAAI,KAAK,CAAC,eAAe,SAAS,eAAe,YAAY,EAAE,CAAC,CAAC;gBACzE,CAAC;gBAED,6CAA6C;gBAC7C,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;oBACxB,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAC;gBACvF,CAAC;gBAED,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,uBAAuB,SAAS,EAAE,CAAC;gBAE5E,2CAA2C;gBAC3C,OAAO,CAAC,GAAG,CAAC,kDAAkD,SAAS,cAAc,UAAU,aAAa,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;gBAClI,OAAO,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;YAClE,CAAC;QACH,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC5E,MAAM,IAAI,KAAK,CAAC,wCAAwC,SAAS,KAAK,YAAY,EAAE,CAAC,CAAC;QACxF,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,wBAAwB,CACnC,IAAY,EACZ,UAKI,EAAE;QAEN,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACzD,CAAC;QAED,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAEnE,IAAI,CAAC;YACH,wBAAwB;YACxB,MAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAC;YAChE,IAAI,eAAe,IAAI,OAAO,CAAC,cAAc,KAAK,KAAK,EAAE,CAAC;gBACxD,IAAI,CAAC;oBACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;oBACvD,OAAO,OAAO,CAAC;gBACjB,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,0CAA0C;oBAC1C,OAAO,CAAC,IAAI,CAAC,qDAAqD,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAC9H,CAAC;YACH,CAAC;YAED,+FAA+F;YAC/F,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAU,kBAAkB,EAAE;gBACtE,IAAI,EAAE,cAAc;gBACpB,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,iBAAiB;aAC3E,CAAC,CAAC;YAEH,6BAA6B;YAC7B,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC;gBAC1B,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;YAClD,CAAC;YAED,OAAO,OAAO,CAAC;QACjB,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,2CAA2C,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAC9E,CAAC;IACH,CAAC;IAED,oCAAoC;IAEpC;;;;;OAKG;IACI,KAAK,CAAC,eAAe,CAC1B,SAAiB,EACjB,OAAwB;QAExB,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAElC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CACzC,oBAAoB,SAAS,YAAY,EACzC,OAAO,CACR,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;QACrD,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,aAAa,CACxB,SAAiB,EACjB,YAAqC;QAErC,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAElC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CACzC,oBAAoB,SAAS,eAAe,EAC5C,YAAY,CACb,CAAC;QAEF,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,kBAAkB,CAAC,SAAiB;QAC/C,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAElC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CACxC,oBAAoB,SAAS,cAAc,CAC5C,CAAC;QAEF,OAAO;YACL,SAAS;YACT,SAAS,EAAE,QAAQ,CAAC,SAAS;YAC7B,MAAM,EAAE,QAAQ,CAAC,MAAM,IAAI,MAAM;YACjC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,IAAI,CAAC;YAChC,cAAc,EAAE,QAAQ,CAAC,cAAc,IAAI,CAAC;YAC5C,eAAe,EAAE,QAAQ,CAAC,eAAe,IAAI,CAAC;YAC9C,UAAU,EAAE,QAAQ,CAAC,UAAU,IAAI,CAAC;YACpC,SAAS,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS;YACxE,WAAW,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS;YAC9E,YAAY,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS;YACjF,KAAK,EAAE,QAAQ,CAAC,KAAK;SACtB,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,iBAAiB,CAAC,SAAiB;QAC9C,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAElC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CACzC,oBAAoB,SAAS,gBAAgB,EAC7C,EAAE,CACH,CAAC;QAEF,2FAA2F;QAC3F,OAAO;YACL,OAAO,EAAE,QAAQ,CAAC,OAAO,IAAI,KAAK;YAClC,SAAS;YACT,SAAS,EAAE,QAAQ,CAAC,SAAS;YAC7B,eAAe,EAAE,QAAQ,CAAC,eAAe,IAAI,CAAC;YAC9C,WAAW,EAAE,QAAQ,CAAC,WAAW,IAAI,CAAC;YACtC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,IAAI,CAAC;YAChC,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,OAAO,EAAE,QAAQ,CAAC,OAAO;SAC1B,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,eAAe,CAAC,SAAiB;QAC5C,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAElC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAC3C,oBAAoB,SAAS,cAAc,CAC5C,CAAC;QAEF,2FAA2F;QAC3F,OAAO;YACL,OAAO,EAAE,QAAQ,CAAC,OAAO,IAAI,KAAK;YAClC,OAAO,EAAE,QAAQ,CAAC,OAAO;SAC1B,CAAC;IACJ,CAAC;CACF;AAvqBD,kCAuqBC"}