rustore 1.0.3 → 1.0.4

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 (44) hide show
  1. package/README.md +86 -1
  2. package/dist/api/apps.d.ts +126 -1
  3. package/dist/api/apps.d.ts.map +1 -1
  4. package/dist/api/apps.js +396 -9
  5. package/dist/api/apps.js.map +1 -1
  6. package/dist/api/catalog.d.ts +25 -0
  7. package/dist/api/catalog.d.ts.map +1 -1
  8. package/dist/api/catalog.js +41 -0
  9. package/dist/api/catalog.js.map +1 -1
  10. package/dist/api/payments-app.d.ts +40 -0
  11. package/dist/api/payments-app.d.ts.map +1 -1
  12. package/dist/api/payments-app.js +70 -0
  13. package/dist/api/payments-app.js.map +1 -1
  14. package/dist/api/payments.d.ts +37 -0
  15. package/dist/api/payments.d.ts.map +1 -1
  16. package/dist/api/payments.js +56 -0
  17. package/dist/api/payments.js.map +1 -1
  18. package/dist/bin.js +493 -2
  19. package/dist/bin.js.map +1 -1
  20. package/dist/commands/apps.d.ts +81 -1
  21. package/dist/commands/apps.d.ts.map +1 -1
  22. package/dist/commands/apps.js +361 -0
  23. package/dist/commands/apps.js.map +1 -1
  24. package/dist/commands/catalog.d.ts +31 -0
  25. package/dist/commands/catalog.d.ts.map +1 -0
  26. package/dist/commands/catalog.js +117 -0
  27. package/dist/commands/catalog.js.map +1 -0
  28. package/dist/commands/feedback.js +2 -2
  29. package/dist/commands/feedback.js.map +1 -1
  30. package/dist/commands/payments-app.d.ts +50 -0
  31. package/dist/commands/payments-app.d.ts.map +1 -0
  32. package/dist/commands/payments-app.js +197 -0
  33. package/dist/commands/payments-app.js.map +1 -0
  34. package/dist/commands/payments.d.ts +42 -0
  35. package/dist/commands/payments.d.ts.map +1 -0
  36. package/dist/commands/payments.js +152 -0
  37. package/dist/commands/payments.js.map +1 -0
  38. package/dist/config.d.ts.map +1 -1
  39. package/dist/config.js +9 -1
  40. package/dist/config.js.map +1 -1
  41. package/dist/types.d.ts +445 -0
  42. package/dist/types.d.ts.map +1 -1
  43. package/package.json +1 -1
  44. package/README.en.md +0 -331
package/dist/api/apps.js CHANGED
@@ -4,7 +4,7 @@
4
4
  *
5
5
  * @see https://www.rustore.ru/help/work-with-rustore-api/api-upload-publication-app
6
6
  */
7
- import { readFileSync } from 'node:fs';
7
+ import { readFileSync, existsSync, statSync } from 'node:fs';
8
8
  import { RustoreApiClient } from './client.js';
9
9
  import { getToken } from './auth.js';
10
10
  /**
@@ -129,14 +129,66 @@ export class AppsApi extends RustoreApiClient {
129
129
  const fileSizeMB = (fileBuffer.length / (1024 * 1024)).toFixed(2);
130
130
  console.error(`[DEBUG] API Request: ${url} (uploading ${fileName}, size: ${fileSizeMB} MB)`);
131
131
  }
132
- const response = await fetch(url, {
133
- method: 'POST',
134
- headers: {
135
- 'Public-Token': token,
136
- // Не устанавливаем Content-Type - fetch установит автоматически с boundary
137
- },
138
- body: formData,
139
- });
132
+ // Проверяем, что файл существует и доступен для чтения
133
+ if (!existsSync(filePath)) {
134
+ throw new Error(`Файл не найден: ${filePath}`);
135
+ }
136
+ const fileStats = statSync(filePath);
137
+ if (process.env.DEBUG) {
138
+ console.error(`[DEBUG] File size: ${(fileStats.size / (1024 * 1024)).toFixed(2)} MB`);
139
+ console.error(`[DEBUG] File readable: ${fileStats.mode & 0o444 ? 'yes' : 'no'}`);
140
+ }
141
+ // Для больших файлов может потребоваться больше времени
142
+ // Используем AbortController с увеличенным таймаутом (30 минут для файлов до 5 ГБ)
143
+ const controller = new AbortController();
144
+ const timeoutId = setTimeout(() => controller.abort(), 30 * 60 * 1000); // 30 минут
145
+ let response;
146
+ try {
147
+ if (process.env.DEBUG) {
148
+ console.error(`[DEBUG] Starting fetch request to: ${url}`);
149
+ console.error(`[DEBUG] FormData entries count: ${formData instanceof FormData ? 'N/A (FormData)' : '0'}`);
150
+ }
151
+ response = await fetch(url, {
152
+ method: 'POST',
153
+ headers: {
154
+ 'Public-Token': token,
155
+ // Не устанавливаем Content-Type - fetch установит автоматически с boundary
156
+ },
157
+ body: formData,
158
+ signal: controller.signal,
159
+ });
160
+ clearTimeout(timeoutId);
161
+ }
162
+ catch (fetchError) {
163
+ clearTimeout(timeoutId);
164
+ if (process.env.DEBUG) {
165
+ console.error(`[DEBUG] Fetch error details:`, {
166
+ name: fetchError instanceof Error ? fetchError.name : 'Unknown',
167
+ message: fetchError instanceof Error ? fetchError.message : String(fetchError),
168
+ stack: fetchError instanceof Error ? fetchError.stack : undefined,
169
+ cause: fetchError instanceof Error ? fetchError.cause : undefined,
170
+ });
171
+ }
172
+ if (fetchError instanceof Error && fetchError.name === 'AbortError') {
173
+ throw new Error('Таймаут загрузки файла. Файл слишком большой или соединение прервано.');
174
+ }
175
+ // Более детальная информация об ошибке
176
+ const errorMessage = fetchError instanceof Error ? fetchError.message : String(fetchError);
177
+ const errorName = fetchError instanceof Error ? fetchError.name : 'UnknownError';
178
+ // Проверяем, является ли это сетевой ошибкой
179
+ if (errorName === 'TypeError' && errorMessage.includes('fetch failed')) {
180
+ throw new Error(`Ошибка сетевого соединения при загрузке файла.\n` +
181
+ `Детали: ${errorMessage}\n` +
182
+ `URL: ${url}\n` +
183
+ `Размер файла: ${(fileStats.size / (1024 * 1024)).toFixed(2)} MB\n` +
184
+ `Проверьте:\n` +
185
+ ` 1. Интернет-соединение\n` +
186
+ ` 2. Доступность API (https://public-api.rustore.ru)\n` +
187
+ ` 3. Размер файла (максимальный размер может быть ограничен)\n` +
188
+ ` 4. Токен авторизации (выполните 'rustore login' если необходимо)`);
189
+ }
190
+ throw new Error(`Ошибка загрузки файла (${errorName}): ${errorMessage}`);
191
+ }
140
192
  // Получаем текст ответа для логирования и парсинга
141
193
  const responseText = await response.text();
142
194
  // Debug: логируем сырой ответ API
@@ -167,6 +219,341 @@ export class AppsApi extends RustoreApiClient {
167
219
  throw new Error(`Ошибка парсинга ответа API: ${responseText}`);
168
220
  }
169
221
  }
222
+ /**
223
+ * Отправить черновую версию приложения на модерацию
224
+ * POST /public/v1/application/{packageName}/version/{versionId}/commit
225
+ *
226
+ * Метод для отправки на модерацию черновика версии приложения.
227
+ * Перед отправкой убедитесь, что загружен хотя бы один основной APK-файл.
228
+ *
229
+ * @param packageName - Имя пакета приложения (например, com.example.app)
230
+ * @param versionId - ID версии (полученный из createDraftVersion)
231
+ * @param options - Параметры отправки (priorityUpdate - опциональный, от 0 до 5)
232
+ * @returns Информация об отправке на модерацию
233
+ *
234
+ * @see https://www.rustore.ru/help/work-with-rustore-api/api-upload-publication-app/send-draft-app-for-moderation
235
+ */
236
+ async sendForModeration(packageName, versionId, options) {
237
+ const queryParams = new URLSearchParams();
238
+ if (options?.priorityUpdate !== undefined) {
239
+ queryParams.append('priorityUpdate', String(options.priorityUpdate));
240
+ }
241
+ const queryString = queryParams.toString();
242
+ const endpoint = queryString
243
+ ? `/public/v1/application/${packageName}/version/${versionId}/commit?${queryString}`
244
+ : `/public/v1/application/${packageName}/version/${versionId}/commit`;
245
+ return this.post(endpoint);
246
+ }
247
+ /**
248
+ * Получить информацию о версии приложения
249
+ * GET /public/v1/application/{packageName}/version/{versionId}
250
+ *
251
+ * Метод позволяет получить детальную информацию о конкретной версии приложения.
252
+ *
253
+ * @param packageName - Имя пакета приложения (например, com.example.app)
254
+ * @param versionId - ID версии
255
+ * @returns Информация о версии приложения
256
+ *
257
+ * @see https://www.rustore.ru/help/work-with-rustore-api/api-upload-publication-app/get-version-info
258
+ */
259
+ async getVersionInfo(packageName, versionId) {
260
+ const endpoint = `/public/v1/application/${packageName}/version/${versionId}`;
261
+ return this.get(endpoint);
262
+ }
263
+ /**
264
+ * Получить список версий приложения
265
+ * GET /public/v1/application/{packageName}/version
266
+ *
267
+ * Метод позволяет получить список всех версий приложения с поддержкой пагинации.
268
+ *
269
+ * @param packageName - Имя пакета приложения (например, com.example.app)
270
+ * @param options - Параметры запроса (continuationToken, pageSize и др.)
271
+ * @returns Список версий приложения
272
+ *
273
+ * @see https://www.rustore.ru/help/work-with-rustore-api/api-upload-publication-app/get-version-list
274
+ */
275
+ async getVersionList(packageName, options) {
276
+ const endpoint = `/public/v1/application/${packageName}/version`;
277
+ // Формируем query параметры
278
+ const queryParams = new URLSearchParams();
279
+ if (options) {
280
+ Object.entries(options).forEach(([key, value]) => {
281
+ if (value !== undefined && value !== null && value !== '') {
282
+ queryParams.append(key, String(value));
283
+ }
284
+ });
285
+ }
286
+ const queryString = queryParams.toString();
287
+ const finalEndpoint = queryString ? `${endpoint}?${queryString}` : endpoint;
288
+ return this.get(finalEndpoint);
289
+ }
290
+ /**
291
+ * Получить список тегов приложений
292
+ * GET /public/v1/application/tag
293
+ *
294
+ * Метод позволяет получить список доступных тегов для приложений.
295
+ * Теги используются при создании черновой версии (seoTagIds).
296
+ *
297
+ * @param options - Параметры запроса (continuationToken, pageSize и др.)
298
+ * @returns Список тегов приложений
299
+ *
300
+ * @see https://www.rustore.ru/help/work-with-rustore-api/api-upload-publication-app/get-app-tag-list
301
+ */
302
+ async getAppTagList(options) {
303
+ const endpoint = '/public/v1/application/tag';
304
+ // Формируем query параметры
305
+ const queryParams = new URLSearchParams();
306
+ if (options) {
307
+ Object.entries(options).forEach(([key, value]) => {
308
+ if (value !== undefined && value !== null && value !== '') {
309
+ queryParams.append(key, String(value));
310
+ }
311
+ });
312
+ }
313
+ const queryString = queryParams.toString();
314
+ const finalEndpoint = queryString ? `${endpoint}?${queryString}` : endpoint;
315
+ return this.get(finalEndpoint);
316
+ }
317
+ /**
318
+ * Загрузить AAB файл для версии приложения
319
+ * POST /public/v1/application/{packageName}/version/{versionId}/aab
320
+ *
321
+ * Метод позволяет загрузить AAB (Android App Bundle) файл для версии приложения.
322
+ * Аналогичен uploadApkFile, но для AAB формата.
323
+ *
324
+ * @param packageName - Имя пакета приложения (например, com.example.app)
325
+ * @param versionId - ID версии (полученный из createDraftVersion)
326
+ * @param filePath - Путь к AAB файлу
327
+ * @param options - Параметры загрузки (isMainApk - обязательный, servicesType - опциональный)
328
+ * @returns Информация о загруженном файле
329
+ *
330
+ * @see https://www.rustore.ru/help/work-with-rustore-api/api-upload-publication-app/apk-file-upload/file-upload-aab
331
+ */
332
+ async uploadAabFile(packageName, versionId, filePath, options) {
333
+ // Формируем query параметры
334
+ const queryParams = new URLSearchParams();
335
+ queryParams.append('isMainApk', String(options.isMainApk));
336
+ if (options.servicesType) {
337
+ queryParams.append('servicesType', options.servicesType);
338
+ }
339
+ else {
340
+ queryParams.append('servicesType', 'Unknown');
341
+ }
342
+ const endpoint = `/public/v1/application/${packageName}/version/${versionId}/aab?${queryParams.toString()}`;
343
+ // Читаем файл
344
+ const fileBuffer = readFileSync(filePath);
345
+ const fileName = filePath.split('/').pop() || 'app.aab';
346
+ // Создаём FormData для multipart/form-data запроса
347
+ const formData = new FormData();
348
+ const file = new File([fileBuffer], fileName, {
349
+ type: 'application/octet-stream', // AAB файлы обычно используют octet-stream
350
+ });
351
+ formData.append('file', file);
352
+ // Выполняем запрос с FormData
353
+ const token = await getToken();
354
+ const url = `${this.baseUrl}${endpoint}`;
355
+ if (process.env.DEBUG) {
356
+ const fileSizeMB = (fileBuffer.length / (1024 * 1024)).toFixed(2);
357
+ console.error(`[DEBUG] API Request: ${url} (uploading ${fileName}, size: ${fileSizeMB} MB)`);
358
+ }
359
+ // Проверяем, что файл существует и доступен для чтения
360
+ if (!existsSync(filePath)) {
361
+ throw new Error(`Файл не найден: ${filePath}`);
362
+ }
363
+ const fileStats = statSync(filePath);
364
+ if (process.env.DEBUG) {
365
+ console.error(`[DEBUG] File size: ${(fileStats.size / (1024 * 1024)).toFixed(2)} MB`);
366
+ }
367
+ // Для больших файлов может потребоваться больше времени
368
+ const controller = new AbortController();
369
+ const timeoutId = setTimeout(() => controller.abort(), 30 * 60 * 1000); // 30 минут
370
+ let response;
371
+ try {
372
+ response = await fetch(url, {
373
+ method: 'POST',
374
+ headers: {
375
+ 'Public-Token': token,
376
+ },
377
+ body: formData,
378
+ signal: controller.signal,
379
+ });
380
+ clearTimeout(timeoutId);
381
+ }
382
+ catch (fetchError) {
383
+ clearTimeout(timeoutId);
384
+ if (fetchError instanceof Error && fetchError.name === 'AbortError') {
385
+ throw new Error('Таймаут загрузки файла. Файл слишком большой или соединение прервано.');
386
+ }
387
+ const errorMessage = fetchError instanceof Error ? fetchError.message : String(fetchError);
388
+ const errorName = fetchError instanceof Error ? fetchError.name : 'UnknownError';
389
+ if (errorName === 'TypeError' && errorMessage.includes('fetch failed')) {
390
+ throw new Error(`Ошибка сетевого соединения при загрузке файла.\n` +
391
+ `Детали: ${errorMessage}\n` +
392
+ `URL: ${url}\n` +
393
+ `Размер файла: ${(fileStats.size / (1024 * 1024)).toFixed(2)} MB`);
394
+ }
395
+ throw new Error(`Ошибка загрузки файла (${errorName}): ${errorMessage}`);
396
+ }
397
+ const responseText = await response.text();
398
+ if (process.env.DEBUG) {
399
+ console.error(`[DEBUG] API Response Status: ${response.status} ${response.statusText}`);
400
+ console.error(`[DEBUG] API Response Body:`, responseText);
401
+ }
402
+ if (!response.ok) {
403
+ let errorData;
404
+ try {
405
+ errorData = JSON.parse(responseText);
406
+ }
407
+ catch {
408
+ // Игнорируем ошибку парсинга
409
+ }
410
+ const errorMessage = errorData?.message ?? responseText;
411
+ throw new Error(`Ошибка API (${response.status}): ${errorMessage}`);
412
+ }
413
+ try {
414
+ return JSON.parse(responseText);
415
+ }
416
+ catch (parseError) {
417
+ if (process.env.DEBUG) {
418
+ console.error(`[DEBUG] Failed to parse JSON response:`, parseError);
419
+ }
420
+ throw new Error(`Ошибка парсинга ответа API: ${responseText}`);
421
+ }
422
+ }
423
+ /**
424
+ * Обновить черновую версию приложения
425
+ * PUT /public/v1/application/{packageName}/version/{versionId}
426
+ *
427
+ * Метод позволяет обновить информацию о черновой версии приложения.
428
+ *
429
+ * @param packageName - Имя пакета приложения (например, com.example.app)
430
+ * @param versionId - ID версии
431
+ * @param data - Данные для обновления черновой версии
432
+ * @returns Информация об обновлённой черновой версии
433
+ *
434
+ * @see https://www.rustore.ru/help/work-with-rustore-api/api-upload-publication-app/update-draft-version
435
+ */
436
+ async updateDraftVersion(packageName, versionId, data) {
437
+ const endpoint = `/public/v1/application/${packageName}/version/${versionId}`;
438
+ return this.put(endpoint, data);
439
+ }
440
+ /**
441
+ * Удалить черновую версию приложения
442
+ * DELETE /public/v1/application/{packageName}/version/{versionId}
443
+ *
444
+ * Метод позволяет удалить черновую версию приложения.
445
+ *
446
+ * @param packageName - Имя пакета приложения (например, com.example.app)
447
+ * @param versionId - ID версии
448
+ * @returns Результат удаления
449
+ *
450
+ * @see https://www.rustore.ru/help/work-with-rustore-api/api-upload-publication-app/delete-draft-version
451
+ */
452
+ async deleteDraftVersion(packageName, versionId) {
453
+ const endpoint = `/public/v1/application/${packageName}/version/${versionId}`;
454
+ return this.delete(endpoint);
455
+ }
456
+ /**
457
+ * Загрузить скриншоты для версии приложения
458
+ * POST /public/v1/application/{packageName}/version/{versionId}/screens
459
+ *
460
+ * Метод позволяет загрузить скриншоты приложения для разных типов устройств.
461
+ *
462
+ * @param packageName - Имя пакета приложения (например, com.example.app)
463
+ * @param versionId - ID версии
464
+ * @param filePaths - Массив путей к файлам скриншотов
465
+ * @param options - Параметры загрузки (deviceType - обязательный)
466
+ * @returns Информация о загруженных скриншотах
467
+ *
468
+ * @see https://www.rustore.ru/help/work-with-rustore-api/api-upload-publication-app/apk-screens-upload
469
+ */
470
+ async uploadScreens(packageName, versionId, filePaths, options) {
471
+ const queryParams = new URLSearchParams();
472
+ queryParams.append('deviceType', options.deviceType);
473
+ const endpoint = `/public/v1/application/${packageName}/version/${versionId}/screens?${queryParams.toString()}`;
474
+ // Создаём FormData для multipart/form-data запроса
475
+ const formData = new FormData();
476
+ // Добавляем все файлы скриншотов
477
+ filePaths.forEach((filePath, index) => {
478
+ if (!existsSync(filePath)) {
479
+ throw new Error(`Файл не найден: ${filePath}`);
480
+ }
481
+ const fileBuffer = readFileSync(filePath);
482
+ const fileName = filePath.split('/').pop() || `screen_${index}.png`;
483
+ const file = new File([fileBuffer], fileName, {
484
+ type: 'image/png', // Предполагаем PNG, но можно определить по расширению
485
+ });
486
+ formData.append('files', file);
487
+ });
488
+ const token = await getToken();
489
+ const url = `${this.baseUrl}${endpoint}`;
490
+ if (process.env.DEBUG) {
491
+ console.error(`[DEBUG] API Request: ${url} (uploading ${filePaths.length} screens, deviceType: ${options.deviceType})`);
492
+ }
493
+ const controller = new AbortController();
494
+ const timeoutId = setTimeout(() => controller.abort(), 10 * 60 * 1000); // 10 минут
495
+ let response;
496
+ try {
497
+ response = await fetch(url, {
498
+ method: 'POST',
499
+ headers: {
500
+ 'Public-Token': token,
501
+ },
502
+ body: formData,
503
+ signal: controller.signal,
504
+ });
505
+ clearTimeout(timeoutId);
506
+ }
507
+ catch (fetchError) {
508
+ clearTimeout(timeoutId);
509
+ if (fetchError instanceof Error && fetchError.name === 'AbortError') {
510
+ throw new Error('Таймаут загрузки скриншотов.');
511
+ }
512
+ const errorMessage = fetchError instanceof Error ? fetchError.message : String(fetchError);
513
+ throw new Error(`Ошибка загрузки скриншотов: ${errorMessage}`);
514
+ }
515
+ const responseText = await response.text();
516
+ if (process.env.DEBUG) {
517
+ console.error(`[DEBUG] API Response Status: ${response.status} ${response.statusText}`);
518
+ console.error(`[DEBUG] API Response Body:`, responseText);
519
+ }
520
+ if (!response.ok) {
521
+ let errorData;
522
+ try {
523
+ errorData = JSON.parse(responseText);
524
+ }
525
+ catch {
526
+ // Игнорируем ошибку парсинга
527
+ }
528
+ const errorMessage = errorData?.message ?? responseText;
529
+ throw new Error(`Ошибка API (${response.status}): ${errorMessage}`);
530
+ }
531
+ try {
532
+ return JSON.parse(responseText);
533
+ }
534
+ catch (parseError) {
535
+ if (process.env.DEBUG) {
536
+ console.error(`[DEBUG] Failed to parse JSON response:`, parseError);
537
+ }
538
+ throw new Error(`Ошибка парсинга ответа API: ${responseText}`);
539
+ }
540
+ }
541
+ /**
542
+ * Получить статус версии приложения
543
+ * GET /public/v1/application/{packageName}/version/{versionId}/status
544
+ *
545
+ * Метод позволяет получить статус модерации версии приложения.
546
+ *
547
+ * @param packageName - Имя пакета приложения (например, com.example.app)
548
+ * @param versionId - ID версии
549
+ * @returns Статус версии приложения
550
+ *
551
+ * @see https://www.rustore.ru/help/work-with-rustore-api/api-upload-publication-app/get-version-status
552
+ */
553
+ async getVersionStatus(packageName, versionId) {
554
+ const endpoint = `/public/v1/application/${packageName}/version/${versionId}/status`;
555
+ return this.get(endpoint);
556
+ }
170
557
  }
171
558
  /**
172
559
  * Экспортируемый экземпляр клиента для работы с приложениями
@@ -1 +1 @@
1
- {"version":3,"file":"apps.js","sourceRoot":"","sources":["../../src/api/apps.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"apps.js","sourceRoot":"","sources":["../../src/api/apps.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAC,YAAY,EAAE,UAAU,EAAE,QAAQ,EAAC,MAAM,SAAS,CAAC;AAC3D,OAAO,EAAC,gBAAgB,EAAC,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAC,QAAQ,EAAC,MAAM,WAAW,CAAC;AAwBnC;;GAEG;AACH,MAAM,OAAO,OAAQ,SAAQ,gBAAgB;IAC3C;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,UAAU,CAAC,OAA2B;QAC1C,sEAAsE;QACtE,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC;QACjE,MAAM,YAAY,GAAG,cAAc,IAAI,wBAAwB,CAAC;QAEhE,4BAA4B;QAC5B,MAAM,WAAW,GAAG,IAAI,eAAe,EAAE,CAAC;QAC1C,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;gBAC/C,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;oBAC1D,wDAAwD;oBACxD,mDAAmD;oBACnD,qEAAqE;oBACrE,8DAA8D;oBAC9D,4FAA4F;oBAC5F,oFAAoF;oBACpF,MAAM,WAAW,GAAG,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBAC/E,WAAW,CAAC,MAAM,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;gBACvC,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;QAED,MAAM,WAAW,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC;QAC3C,MAAM,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,YAAY,IAAI,WAAW,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC;QAE/E,OAAO,IAAI,CAAC,GAAG,CAAqB,QAAQ,CAAC,CAAC;IAChD,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,UAAU,CACd,OAAsD;QAEtD,MAAM,OAAO,GAAU,EAAE,CAAC;QAC1B,IAAI,iBAAqC,CAAC;QAE1C,GAAG,CAAC;YACF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,EAAC,GAAG,OAAO,EAAE,iBAAiB,EAAC,CAAC,CAAC;YACxE,OAAO,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAEvC,iBAAiB,GAAG,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC;QACtD,CAAC,QAAQ,iBAAiB,EAAE;QAE5B,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,kBAAkB,CACtB,WAAmB,EACnB,IAA+B;QAE/B,MAAM,QAAQ,GAAG,0BAA0B,WAAW,UAAU,CAAC;QACjE,OAAO,IAAI,CAAC,IAAI,CAA6B,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC/D,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,KAAK,CAAC,aAAa,CACjB,WAAmB,EACnB,SAAiB,EACjB,QAAgB,EAChB,OAA6B;QAE7B,4BAA4B;QAC5B,MAAM,WAAW,GAAG,IAAI,eAAe,EAAE,CAAC;QAC1C,WAAW,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;QAC3D,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;YACzB,WAAW,CAAC,MAAM,CAAC,cAAc,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;QAC3D,CAAC;aAAM,CAAC;YACN,WAAW,CAAC,MAAM,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC;QAChD,CAAC;QAED,MAAM,QAAQ,GAAG,0BAA0B,WAAW,YAAY,SAAS,QAAQ,WAAW,CAAC,QAAQ,EAAE,EAAE,CAAC;QAE5G,cAAc;QACd,MAAM,UAAU,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;QAC1C,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,SAAS,CAAC;QAExD,mDAAmD;QACnD,gDAAgD;QAChD,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAC;QAChC,uDAAuD;QACvD,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE;YAC5C,IAAI,EAAE,yCAAyC;SAChD,CAAC,CAAC;QACH,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAE9B,8BAA8B;QAC9B,MAAM,KAAK,GAAG,MAAM,QAAQ,EAAE,CAAC;QAC/B,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,GAAG,QAAQ,EAAE,CAAC;QAEzC,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;YACtB,MAAM,UAAU,GAAG,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAClE,OAAO,CAAC,KAAK,CACX,wBAAwB,GAAG,eAAe,QAAQ,WAAW,UAAU,MAAM,CAC9E,CAAC;QACJ,CAAC;QAED,uDAAuD;QACvD,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CAAC,mBAAmB,QAAQ,EAAE,CAAC,CAAC;QACjD,CAAC;QAED,MAAM,SAAS,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACrC,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;YACtB,OAAO,CAAC,KAAK,CACX,sBAAsB,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CACvE,CAAC;YACF,OAAO,CAAC,KAAK,CAAC,0BAA0B,SAAS,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QACnF,CAAC;QAED,wDAAwD;QACxD,mFAAmF;QACnF,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,WAAW;QAEnF,IAAI,QAAkB,CAAC;QACvB,IAAI,CAAC;YACH,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;gBACtB,OAAO,CAAC,KAAK,CAAC,sCAAsC,GAAG,EAAE,CAAC,CAAC;gBAC3D,OAAO,CAAC,KAAK,CACX,mCAAmC,QAAQ,YAAY,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,GAAG,EAAE,CAC3F,CAAC;YACJ,CAAC;YAED,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;gBAC1B,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,cAAc,EAAE,KAAK;oBACrB,2EAA2E;iBAC5E;gBACD,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,UAAU,CAAC,MAAM;aAC1B,CAAC,CAAC;YACH,YAAY,CAAC,SAAS,CAAC,CAAC;QAC1B,CAAC;QAAC,OAAO,UAAU,EAAE,CAAC;YACpB,YAAY,CAAC,SAAS,CAAC,CAAC;YAExB,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;gBACtB,OAAO,CAAC,KAAK,CAAC,8BAA8B,EAAE;oBAC5C,IAAI,EAAE,UAAU,YAAY,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;oBAC/D,OAAO,EAAE,UAAU,YAAY,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;oBAC9E,KAAK,EAAE,UAAU,YAAY,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;oBACjE,KAAK,EAAE,UAAU,YAAY,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;iBAClE,CAAC,CAAC;YACL,CAAC;YAED,IAAI,UAAU,YAAY,KAAK,IAAI,UAAU,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBACpE,MAAM,IAAI,KAAK,CACb,uEAAuE,CACxE,CAAC;YACJ,CAAC;YAED,uCAAuC;YACvC,MAAM,YAAY,GAChB,UAAU,YAAY,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YACxE,MAAM,SAAS,GAAG,UAAU,YAAY,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC;YAEjF,6CAA6C;YAC7C,IAAI,SAAS,KAAK,WAAW,IAAI,YAAY,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;gBACvE,MAAM,IAAI,KAAK,CACb,kDAAkD;oBAChD,WAAW,YAAY,IAAI;oBAC3B,QAAQ,GAAG,IAAI;oBACf,iBAAiB,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO;oBACnE,cAAc;oBACd,4BAA4B;oBAC5B,wDAAwD;oBACxD,gEAAgE;oBAChE,oEAAoE,CACvE,CAAC;YACJ,CAAC;YAED,MAAM,IAAI,KAAK,CAAC,0BAA0B,SAAS,MAAM,YAAY,EAAE,CAAC,CAAC;QAC3E,CAAC;QAED,mDAAmD;QACnD,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QAE3C,kCAAkC;QAClC,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;YACtB,OAAO,CAAC,KAAK,CACX,gCAAgC,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CACzE,CAAC;YACF,OAAO,CAAC,KAAK,CACX,+BAA+B,EAC/B,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAC/C,CAAC;YACF,OAAO,CAAC,KAAK,CAAC,4BAA4B,EAAE,YAAY,CAAC,CAAC;QAC5D,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,IAAI,SAAwD,CAAC;YAE7D,IAAI,CAAC;gBACH,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YACvC,CAAC;YAAC,MAAM,CAAC;gBACP,6BAA6B;YAC/B,CAAC;YAED,MAAM,YAAY,GAAG,SAAS,EAAE,OAAO,IAAI,YAAY,CAAC;YACxD,MAAM,IAAI,KAAK,CAAC,eAAe,QAAQ,CAAC,MAAM,MAAM,YAAY,EAAE,CAAC,CAAC;QACtE,CAAC;QAED,oBAAoB;QACpB,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAA0B,CAAC;QAC3D,CAAC;QAAC,OAAO,UAAU,EAAE,CAAC;YACpB,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;gBACtB,OAAO,CAAC,KAAK,CAAC,wCAAwC,EAAE,UAAU,CAAC,CAAC;YACtE,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,+BAA+B,YAAY,EAAE,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,KAAK,CAAC,iBAAiB,CACrB,WAAmB,EACnB,SAAiB,EACjB,OAAkC;QAElC,MAAM,WAAW,GAAG,IAAI,eAAe,EAAE,CAAC;QAC1C,IAAI,OAAO,EAAE,cAAc,KAAK,SAAS,EAAE,CAAC;YAC1C,WAAW,CAAC,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC;QACvE,CAAC;QAED,MAAM,WAAW,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC;QAC3C,MAAM,QAAQ,GAAG,WAAW;YAC1B,CAAC,CAAC,0BAA0B,WAAW,YAAY,SAAS,WAAW,WAAW,EAAE;YACpF,CAAC,CAAC,0BAA0B,WAAW,YAAY,SAAS,SAAS,CAAC;QAExE,OAAO,IAAI,CAAC,IAAI,CAA4B,QAAQ,CAAC,CAAC;IACxD,CAAC;IAED;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,cAAc,CAClB,WAAmB,EACnB,SAAiB;QAEjB,MAAM,QAAQ,GAAG,0BAA0B,WAAW,YAAY,SAAS,EAAE,CAAC;QAC9E,OAAO,IAAI,CAAC,GAAG,CAAyB,QAAQ,CAAC,CAAC;IACpD,CAAC;IAED;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,cAAc,CAClB,WAAmB,EACnB,OAA+B;QAE/B,MAAM,QAAQ,GAAG,0BAA0B,WAAW,UAAU,CAAC;QAEjE,4BAA4B;QAC5B,MAAM,WAAW,GAAG,IAAI,eAAe,EAAE,CAAC;QAC1C,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;gBAC/C,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;oBAC1D,WAAW,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;gBACzC,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;QAED,MAAM,WAAW,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC;QAC3C,MAAM,aAAa,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,QAAQ,IAAI,WAAW,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;QAE5E,OAAO,IAAI,CAAC,GAAG,CAAyB,aAAa,CAAC,CAAC;IACzD,CAAC;IAED;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,aAAa,CAAC,OAA8B;QAChD,MAAM,QAAQ,GAAG,4BAA4B,CAAC;QAE9C,4BAA4B;QAC5B,MAAM,WAAW,GAAG,IAAI,eAAe,EAAE,CAAC;QAC1C,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;gBAC/C,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;oBAC1D,WAAW,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;gBACzC,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;QAED,MAAM,WAAW,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC;QAC3C,MAAM,aAAa,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,QAAQ,IAAI,WAAW,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;QAE5E,OAAO,IAAI,CAAC,GAAG,CAAwB,aAAa,CAAC,CAAC;IACxD,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,KAAK,CAAC,aAAa,CACjB,WAAmB,EACnB,SAAiB,EACjB,QAAgB,EAChB,OAA6B;QAE7B,4BAA4B;QAC5B,MAAM,WAAW,GAAG,IAAI,eAAe,EAAE,CAAC;QAC1C,WAAW,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;QAC3D,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;YACzB,WAAW,CAAC,MAAM,CAAC,cAAc,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;QAC3D,CAAC;aAAM,CAAC;YACN,WAAW,CAAC,MAAM,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC;QAChD,CAAC;QAED,MAAM,QAAQ,GAAG,0BAA0B,WAAW,YAAY,SAAS,QAAQ,WAAW,CAAC,QAAQ,EAAE,EAAE,CAAC;QAE5G,cAAc;QACd,MAAM,UAAU,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;QAC1C,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,SAAS,CAAC;QAExD,mDAAmD;QACnD,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAC;QAChC,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE;YAC5C,IAAI,EAAE,0BAA0B,EAAE,2CAA2C;SAC9E,CAAC,CAAC;QACH,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAE9B,8BAA8B;QAC9B,MAAM,KAAK,GAAG,MAAM,QAAQ,EAAE,CAAC;QAC/B,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,GAAG,QAAQ,EAAE,CAAC;QAEzC,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;YACtB,MAAM,UAAU,GAAG,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAClE,OAAO,CAAC,KAAK,CACX,wBAAwB,GAAG,eAAe,QAAQ,WAAW,UAAU,MAAM,CAC9E,CAAC;QACJ,CAAC;QAED,uDAAuD;QACvD,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CAAC,mBAAmB,QAAQ,EAAE,CAAC,CAAC;QACjD,CAAC;QAED,MAAM,SAAS,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACrC,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;YACtB,OAAO,CAAC,KAAK,CACX,sBAAsB,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CACvE,CAAC;QACJ,CAAC;QAED,wDAAwD;QACxD,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,WAAW;QAEnF,IAAI,QAAkB,CAAC;QACvB,IAAI,CAAC;YACH,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;gBAC1B,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,cAAc,EAAE,KAAK;iBACtB;gBACD,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,UAAU,CAAC,MAAM;aAC1B,CAAC,CAAC;YACH,YAAY,CAAC,SAAS,CAAC,CAAC;QAC1B,CAAC;QAAC,OAAO,UAAU,EAAE,CAAC;YACpB,YAAY,CAAC,SAAS,CAAC,CAAC;YAExB,IAAI,UAAU,YAAY,KAAK,IAAI,UAAU,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBACpE,MAAM,IAAI,KAAK,CACb,uEAAuE,CACxE,CAAC;YACJ,CAAC;YAED,MAAM,YAAY,GAChB,UAAU,YAAY,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YACxE,MAAM,SAAS,GAAG,UAAU,YAAY,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC;YAEjF,IAAI,SAAS,KAAK,WAAW,IAAI,YAAY,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;gBACvE,MAAM,IAAI,KAAK,CACb,kDAAkD;oBAChD,WAAW,YAAY,IAAI;oBAC3B,QAAQ,GAAG,IAAI;oBACf,iBAAiB,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CACpE,CAAC;YACJ,CAAC;YAED,MAAM,IAAI,KAAK,CAAC,0BAA0B,SAAS,MAAM,YAAY,EAAE,CAAC,CAAC;QAC3E,CAAC;QAED,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QAE3C,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;YACtB,OAAO,CAAC,KAAK,CACX,gCAAgC,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CACzE,CAAC;YACF,OAAO,CAAC,KAAK,CAAC,4BAA4B,EAAE,YAAY,CAAC,CAAC;QAC5D,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,IAAI,SAAwD,CAAC;YAE7D,IAAI,CAAC;gBACH,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YACvC,CAAC;YAAC,MAAM,CAAC;gBACP,6BAA6B;YAC/B,CAAC;YAED,MAAM,YAAY,GAAG,SAAS,EAAE,OAAO,IAAI,YAAY,CAAC;YACxD,MAAM,IAAI,KAAK,CAAC,eAAe,QAAQ,CAAC,MAAM,MAAM,YAAY,EAAE,CAAC,CAAC;QACtE,CAAC;QAED,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAA0B,CAAC;QAC3D,CAAC;QAAC,OAAO,UAAU,EAAE,CAAC;YACpB,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;gBACtB,OAAO,CAAC,KAAK,CAAC,wCAAwC,EAAE,UAAU,CAAC,CAAC;YACtE,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,+BAA+B,YAAY,EAAE,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,kBAAkB,CACtB,WAAmB,EACnB,SAAiB,EACjB,IAA+B;QAE/B,MAAM,QAAQ,GAAG,0BAA0B,WAAW,YAAY,SAAS,EAAE,CAAC;QAC9E,OAAO,IAAI,CAAC,GAAG,CAA6B,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC9D,CAAC;IAED;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,kBAAkB,CACtB,WAAmB,EACnB,SAAiB;QAEjB,MAAM,QAAQ,GAAG,0BAA0B,WAAW,YAAY,SAAS,EAAE,CAAC;QAC9E,OAAO,IAAI,CAAC,MAAM,CAA6B,QAAQ,CAAC,CAAC;IAC3D,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,KAAK,CAAC,aAAa,CACjB,WAAmB,EACnB,SAAiB,EACjB,SAAmB,EACnB,OAA6B;QAE7B,MAAM,WAAW,GAAG,IAAI,eAAe,EAAE,CAAC;QAC1C,WAAW,CAAC,MAAM,CAAC,YAAY,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;QAErD,MAAM,QAAQ,GAAG,0BAA0B,WAAW,YAAY,SAAS,YAAY,WAAW,CAAC,QAAQ,EAAE,EAAE,CAAC;QAEhH,mDAAmD;QACnD,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAC;QAEhC,iCAAiC;QACjC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE;YACpC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC1B,MAAM,IAAI,KAAK,CAAC,mBAAmB,QAAQ,EAAE,CAAC,CAAC;YACjD,CAAC;YAED,MAAM,UAAU,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;YAC1C,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,UAAU,KAAK,MAAM,CAAC;YACpE,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE;gBAC5C,IAAI,EAAE,WAAW,EAAE,sDAAsD;aAC1E,CAAC,CAAC;YACH,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;QAEH,MAAM,KAAK,GAAG,MAAM,QAAQ,EAAE,CAAC;QAC/B,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,GAAG,QAAQ,EAAE,CAAC;QAEzC,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;YACtB,OAAO,CAAC,KAAK,CACX,wBAAwB,GAAG,eAAe,SAAS,CAAC,MAAM,yBAAyB,OAAO,CAAC,UAAU,GAAG,CACzG,CAAC;QACJ,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,WAAW;QAEnF,IAAI,QAAkB,CAAC;QACvB,IAAI,CAAC;YACH,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;gBAC1B,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,cAAc,EAAE,KAAK;iBACtB;gBACD,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,UAAU,CAAC,MAAM;aAC1B,CAAC,CAAC;YACH,YAAY,CAAC,SAAS,CAAC,CAAC;QAC1B,CAAC;QAAC,OAAO,UAAU,EAAE,CAAC;YACpB,YAAY,CAAC,SAAS,CAAC,CAAC;YAExB,IAAI,UAAU,YAAY,KAAK,IAAI,UAAU,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBACpE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;YAClD,CAAC;YAED,MAAM,YAAY,GAChB,UAAU,YAAY,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YACxE,MAAM,IAAI,KAAK,CAAC,+BAA+B,YAAY,EAAE,CAAC,CAAC;QACjE,CAAC;QAED,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QAE3C,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;YACtB,OAAO,CAAC,KAAK,CACX,gCAAgC,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CACzE,CAAC;YACF,OAAO,CAAC,KAAK,CAAC,4BAA4B,EAAE,YAAY,CAAC,CAAC;QAC5D,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,IAAI,SAAwD,CAAC;YAE7D,IAAI,CAAC;gBACH,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YACvC,CAAC;YAAC,MAAM,CAAC;gBACP,6BAA6B;YAC/B,CAAC;YAED,MAAM,YAAY,GAAG,SAAS,EAAE,OAAO,IAAI,YAAY,CAAC;YACxD,MAAM,IAAI,KAAK,CAAC,eAAe,QAAQ,CAAC,MAAM,MAAM,YAAY,EAAE,CAAC,CAAC;QACtE,CAAC;QAED,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAA0B,CAAC;QAC3D,CAAC;QAAC,OAAO,UAAU,EAAE,CAAC;YACpB,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;gBACtB,OAAO,CAAC,KAAK,CAAC,wCAAwC,EAAE,UAAU,CAAC,CAAC;YACtE,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,+BAA+B,YAAY,EAAE,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;IAED;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,gBAAgB,CACpB,WAAmB,EACnB,SAAiB;QAEjB,MAAM,QAAQ,GAAG,0BAA0B,WAAW,YAAY,SAAS,SAAS,CAAC;QACrF,OAAO,IAAI,CAAC,GAAG,CAA2B,QAAQ,CAAC,CAAC;IACtD,CAAC;CACF;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC"}
@@ -5,10 +5,35 @@
5
5
  * @see https://www.rustore.ru/help/work-with-rustore-api/api-catalog
6
6
  */
7
7
  import { RustoreApiClient } from './client.js';
8
+ import type { GetProductsResponse, GetProductsOptions, GetProductResponse } from '../types.js';
8
9
  /**
9
10
  * Клиент для работы с продуктовым каталогом
10
11
  */
11
12
  export declare class CatalogApi extends RustoreApiClient {
13
+ /**
14
+ * Получить список продуктов
15
+ * GET /public/v1/catalog/product
16
+ *
17
+ * Метод позволяет получить список всех продуктов с поддержкой пагинации.
18
+ *
19
+ * @param options - Параметры запроса (continuationToken, pageSize и др.)
20
+ * @returns Список продуктов
21
+ *
22
+ * @see https://www.rustore.ru/help/work-with-rustore-api/api-catalog/get-products
23
+ */
24
+ getProducts(options?: GetProductsOptions): Promise<GetProductsResponse>;
25
+ /**
26
+ * Получить информацию о продукте
27
+ * GET /public/v1/catalog/product/{productId}
28
+ *
29
+ * Метод позволяет получить детальную информацию о конкретном продукте.
30
+ *
31
+ * @param productId - ID продукта
32
+ * @returns Информация о продукте
33
+ *
34
+ * @see https://www.rustore.ru/help/work-with-rustore-api/api-catalog/get-product
35
+ */
36
+ getProduct(productId: number): Promise<GetProductResponse>;
12
37
  }
13
38
  /**
14
39
  * Экспортируемый экземпляр клиента для работы с каталогом
@@ -1 +1 @@
1
- {"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../src/api/catalog.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAC,gBAAgB,EAAC,MAAM,aAAa,CAAC;AAE7C;;GAEG;AACH,qBAAa,UAAW,SAAQ,gBAAgB;CAG/C;AAED;;GAEG;AACH,eAAO,MAAM,UAAU,YAAmB,CAAC"}
1
+ {"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../src/api/catalog.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAC,gBAAgB,EAAC,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EACV,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EACnB,MAAM,aAAa,CAAC;AAErB;;GAEG;AACH,qBAAa,UAAW,SAAQ,gBAAgB;IAC9C;;;;;;;;;;OAUG;IACG,WAAW,CAAC,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAmB7E;;;;;;;;;;OAUG;IACG,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;CAIjE;AAED;;GAEG;AACH,eAAO,MAAM,UAAU,YAAmB,CAAC"}
@@ -9,6 +9,47 @@ import { RustoreApiClient } from './client.js';
9
9
  * Клиент для работы с продуктовым каталогом
10
10
  */
11
11
  export class CatalogApi extends RustoreApiClient {
12
+ /**
13
+ * Получить список продуктов
14
+ * GET /public/v1/catalog/product
15
+ *
16
+ * Метод позволяет получить список всех продуктов с поддержкой пагинации.
17
+ *
18
+ * @param options - Параметры запроса (continuationToken, pageSize и др.)
19
+ * @returns Список продуктов
20
+ *
21
+ * @see https://www.rustore.ru/help/work-with-rustore-api/api-catalog/get-products
22
+ */
23
+ async getProducts(options) {
24
+ const endpoint = '/public/v1/catalog/product';
25
+ // Формируем query параметры
26
+ const queryParams = new URLSearchParams();
27
+ if (options) {
28
+ Object.entries(options).forEach(([key, value]) => {
29
+ if (value !== undefined && value !== null && value !== '') {
30
+ queryParams.append(key, String(value));
31
+ }
32
+ });
33
+ }
34
+ const queryString = queryParams.toString();
35
+ const finalEndpoint = queryString ? `${endpoint}?${queryString}` : endpoint;
36
+ return this.get(finalEndpoint);
37
+ }
38
+ /**
39
+ * Получить информацию о продукте
40
+ * GET /public/v1/catalog/product/{productId}
41
+ *
42
+ * Метод позволяет получить детальную информацию о конкретном продукте.
43
+ *
44
+ * @param productId - ID продукта
45
+ * @returns Информация о продукте
46
+ *
47
+ * @see https://www.rustore.ru/help/work-with-rustore-api/api-catalog/get-product
48
+ */
49
+ async getProduct(productId) {
50
+ const endpoint = `/public/v1/catalog/product/${productId}`;
51
+ return this.get(endpoint);
52
+ }
12
53
  }
13
54
  /**
14
55
  * Экспортируемый экземпляр клиента для работы с каталогом
@@ -1 +1 @@
1
- {"version":3,"file":"catalog.js","sourceRoot":"","sources":["../../src/api/catalog.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAC,gBAAgB,EAAC,MAAM,aAAa,CAAC;AAE7C;;GAEG;AACH,MAAM,OAAO,UAAW,SAAQ,gBAAgB;CAG/C;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,IAAI,UAAU,EAAE,CAAC"}
1
+ {"version":3,"file":"catalog.js","sourceRoot":"","sources":["../../src/api/catalog.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAC,gBAAgB,EAAC,MAAM,aAAa,CAAC;AAO7C;;GAEG;AACH,MAAM,OAAO,UAAW,SAAQ,gBAAgB;IAC9C;;;;;;;;;;OAUG;IACH,KAAK,CAAC,WAAW,CAAC,OAA4B;QAC5C,MAAM,QAAQ,GAAG,4BAA4B,CAAC;QAE9C,4BAA4B;QAC5B,MAAM,WAAW,GAAG,IAAI,eAAe,EAAE,CAAC;QAC1C,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;gBAC/C,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;oBAC1D,WAAW,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;gBACzC,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;QAED,MAAM,WAAW,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC;QAC3C,MAAM,aAAa,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,QAAQ,IAAI,WAAW,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;QAE5E,OAAO,IAAI,CAAC,GAAG,CAAsB,aAAa,CAAC,CAAC;IACtD,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,UAAU,CAAC,SAAiB;QAChC,MAAM,QAAQ,GAAG,8BAA8B,SAAS,EAAE,CAAC;QAC3D,OAAO,IAAI,CAAC,GAAG,CAAqB,QAAQ,CAAC,CAAC;IAChD,CAAC;CACF;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,IAAI,UAAU,EAAE,CAAC"}
@@ -5,10 +5,50 @@
5
5
  * @see https://www.rustore.ru/help/work-with-rustore-api/api-payments-subscriptions-app
6
6
  */
7
7
  import { RustoreApiClient } from './client.js';
8
+ import type { GetInvoicesResponse, GetInvoicesOptions, GetPurchaseResponse, GetPurchaseListResponse, GetPurchaseListOptions } from '../types.js';
8
9
  /**
9
10
  * Клиент для работы с платежами (методы приложений)
10
11
  */
11
12
  export declare class PaymentsAppApi extends RustoreApiClient {
13
+ /**
14
+ * Получить список счетов приложения
15
+ * GET /public/v1/application/{packageName}/invoice
16
+ *
17
+ * Метод позволяет получить список счетов для указанного приложения с поддержкой пагинации.
18
+ *
19
+ * @param packageName - Имя пакета приложения (например, com.example.app)
20
+ * @param options - Параметры запроса (continuationToken, pageSize и др.)
21
+ * @returns Список счетов
22
+ *
23
+ * @see https://www.rustore.ru/help/work-with-rustore-api/api-payments-subscriptions-app/get-invoices
24
+ */
25
+ getInvoices(packageName: string, options?: GetInvoicesOptions): Promise<GetInvoicesResponse>;
26
+ /**
27
+ * Получить информацию о покупке
28
+ * GET /public/v1/application/{packageName}/purchase/{purchaseId}
29
+ *
30
+ * Метод позволяет получить детальную информацию о конкретной покупке.
31
+ *
32
+ * @param packageName - Имя пакета приложения (например, com.example.app)
33
+ * @param purchaseId - ID покупки
34
+ * @returns Информация о покупке
35
+ *
36
+ * @see https://www.rustore.ru/help/work-with-rustore-api/api-payments-subscriptions-app/get-purchase
37
+ */
38
+ getPurchase(packageName: string, purchaseId: number): Promise<GetPurchaseResponse>;
39
+ /**
40
+ * Получить список покупок приложения
41
+ * GET /public/v1/application/{packageName}/purchase
42
+ *
43
+ * Метод позволяет получить список покупок для указанного приложения с поддержкой пагинации.
44
+ *
45
+ * @param packageName - Имя пакета приложения (например, com.example.app)
46
+ * @param options - Параметры запроса (continuationToken, pageSize и др.)
47
+ * @returns Список покупок
48
+ *
49
+ * @see https://www.rustore.ru/help/work-with-rustore-api/api-payments-subscriptions-app/get-purchase-list
50
+ */
51
+ getPurchaseList(packageName: string, options?: GetPurchaseListOptions): Promise<GetPurchaseListResponse>;
12
52
  }
13
53
  /**
14
54
  * Экспортируемый экземпляр клиента для работы с платежами приложений
@@ -1 +1 @@
1
- {"version":3,"file":"payments-app.d.ts","sourceRoot":"","sources":["../../src/api/payments-app.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAC,gBAAgB,EAAC,MAAM,aAAa,CAAC;AAE7C;;GAEG;AACH,qBAAa,cAAe,SAAQ,gBAAgB;CAGnD;AAED;;GAEG;AACH,eAAO,MAAM,cAAc,gBAAuB,CAAC"}
1
+ {"version":3,"file":"payments-app.d.ts","sourceRoot":"","sources":["../../src/api/payments-app.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAC,gBAAgB,EAAC,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EACV,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,uBAAuB,EACvB,sBAAsB,EACvB,MAAM,aAAa,CAAC;AAErB;;GAEG;AACH,qBAAa,cAAe,SAAQ,gBAAgB;IAClD;;;;;;;;;;;OAWG;IACG,WAAW,CACf,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,mBAAmB,CAAC;IAmB/B;;;;;;;;;;;OAWG;IACG,WAAW,CACf,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,mBAAmB,CAAC;IAK/B;;;;;;;;;;;OAWG;IACG,eAAe,CACnB,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,sBAAsB,GAC/B,OAAO,CAAC,uBAAuB,CAAC;CAkBpC;AAED;;GAEG;AACH,eAAO,MAAM,cAAc,gBAAuB,CAAC"}