solver-sdk 6.1.7 → 6.2.1

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.
@@ -0,0 +1,142 @@
1
+ import { UpdatesApi } from '../api/updates-api.js';
2
+ import { UpdateState, UpdateStatus, DownloadProgress, ElectronUpdaterConfig, UpdateResponse } from '../types/updates.js';
3
+ /**
4
+ * 🔄 Update Manager - Helper для управления обновлениями на стороне клиента
5
+ *
6
+ * Этот класс НЕ является частью SDK API, а предоставляет удобные helper методы
7
+ * для интеграции с electron-updater и управления локальным состоянием обновлений.
8
+ *
9
+ * @example
10
+ * ```typescript
11
+ * import { CodeSolverSDK, UpdateManager } from 'solver-sdk';
12
+ *
13
+ * const sdk = new CodeSolverSDK({ baseURL: 'https://workai.su' });
14
+ * const updateManager = new UpdateManager(sdk.updates, {
15
+ * autoCheckOnStart: true,
16
+ * autoDownload: false,
17
+ * showNotifications: true
18
+ * });
19
+ *
20
+ * // Подписка на события
21
+ * updateManager.on('update-available', (info) => {
22
+ * console.log(`Доступна версия ${info.version}`);
23
+ * });
24
+ *
25
+ * updateManager.on('download-progress', (progress) => {
26
+ * console.log(`Загружено: ${progress.percent}%`);
27
+ * });
28
+ *
29
+ * // Проверка обновлений
30
+ * await updateManager.checkForUpdates('1.0.0', 'win32-x64');
31
+ *
32
+ * // Получение текущего состояния
33
+ * const state = updateManager.getCurrentState();
34
+ * ```
35
+ */
36
+ export declare class UpdateManager {
37
+ private updatesApi;
38
+ private config;
39
+ private state;
40
+ private listeners;
41
+ private autoCheckTimer?;
42
+ /**
43
+ * Создает новый UpdateManager
44
+ *
45
+ * @param updatesApi Экземпляр UpdatesApi из SDK
46
+ * @param config Конфигурация для автообновлений
47
+ */
48
+ constructor(updatesApi: UpdatesApi, config?: ElectronUpdaterConfig);
49
+ /**
50
+ * 🔍 Проверка наличия обновлений
51
+ *
52
+ * @param currentVersion Текущая версия приложения
53
+ * @param platform Платформа (win32-x64, darwin-x64, linux-x64)
54
+ * @param channel Канал обновлений (stable, beta, insider)
55
+ * @returns Информация об обновлении или null если обновлений нет
56
+ */
57
+ checkForUpdates(currentVersion: string, platform: string, channel?: 'stable' | 'beta' | 'insider'): Promise<UpdateResponse | null>;
58
+ /**
59
+ * 📊 Получение текущего состояния обновлений
60
+ *
61
+ * @returns Текущее состояние
62
+ */
63
+ getCurrentState(): UpdateState;
64
+ /**
65
+ * 📊 Получение текущего статуса (для совместимости с клиентом)
66
+ *
67
+ * @returns Объект с текущим статусом
68
+ */
69
+ getCurrentStatus(): {
70
+ status: UpdateStatus;
71
+ updateInfo: UpdateResponse | null;
72
+ progress?: DownloadProgress | null;
73
+ };
74
+ /**
75
+ * 🔄 Обновление прогресса загрузки (вызывается из electron-updater)
76
+ *
77
+ * @param progress Информация о прогрессе
78
+ */
79
+ updateDownloadProgress(progress: DownloadProgress): void;
80
+ /**
81
+ * ✅ Уведомление о завершении загрузки (вызывается из electron-updater)
82
+ */
83
+ markDownloadCompleted(): void;
84
+ /**
85
+ * ❌ Уведомление об ошибке загрузки (вызывается из electron-updater)
86
+ *
87
+ * @param error Сообщение об ошибке
88
+ */
89
+ markDownloadError(error: string): void;
90
+ /**
91
+ * 📝 Получение changelog для версии
92
+ *
93
+ * @param version Версия для получения changelog
94
+ * @param locale Локаль (по умолчанию 'ru')
95
+ * @returns Markdown текст с описанием изменений
96
+ */
97
+ getChangelog(version: string, locale?: string): Promise<string>;
98
+ /**
99
+ * 🔔 Подписка на события
100
+ *
101
+ * @param event Название события
102
+ * @param listener Функция-обработчик
103
+ *
104
+ * События:
105
+ * - checking-for-update: Начата проверка обновлений
106
+ * - update-available: Обновление доступно
107
+ * - update-not-available: Обновлений нет
108
+ * - download-progress: Прогресс загрузки
109
+ * - update-downloaded: Загрузка завершена
110
+ * - error: Произошла ошибка
111
+ * - auto-download-requested: Запрошена автозагрузка
112
+ */
113
+ on(event: string, listener: Function): void;
114
+ /**
115
+ * 🔕 Отписка от события
116
+ *
117
+ * @param event Название события
118
+ * @param listener Функция-обработчик
119
+ */
120
+ off(event: string, listener: Function): void;
121
+ /**
122
+ * 🔄 Запуск автоматической проверки обновлений
123
+ */
124
+ startAutoCheck(): void;
125
+ /**
126
+ * 🛑 Остановка автоматической проверки обновлений
127
+ */
128
+ stopAutoCheck(): void;
129
+ /**
130
+ * 🧹 Очистка ресурсов
131
+ */
132
+ dispose(): void;
133
+ /**
134
+ * Обновление внутреннего состояния
135
+ */
136
+ private updateState;
137
+ /**
138
+ * Генерация события
139
+ */
140
+ private emit;
141
+ }
142
+ //# sourceMappingURL=update-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-manager.d.ts","sourceRoot":"","sources":["../../../src/utils/update-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EACL,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,qBAAqB,EACrB,cAAc,EACf,MAAM,qBAAqB,CAAC;AAE7B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,MAAM,CAAwB;IAGtC,OAAO,CAAC,KAAK,CAMX;IAGF,OAAO,CAAC,SAAS,CAAyC;IAG1D,OAAO,CAAC,cAAc,CAAC,CAAiB;IAExC;;;;;OAKG;gBACS,UAAU,EAAE,UAAU,EAAE,MAAM,GAAE,qBAA0B;IAiBtE;;;;;;;OAOG;IACG,eAAe,CACnB,cAAc,EAAE,MAAM,EACtB,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,QAAQ,GAAG,MAAM,GAAG,SAAoB,GAChD,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IA+CjC;;;;OAIG;IACH,eAAe,IAAI,WAAW;IAI9B;;;;OAIG;IACH,gBAAgB,IAAI;QAClB,MAAM,EAAE,YAAY,CAAC;QACrB,UAAU,EAAE,cAAc,GAAG,IAAI,CAAC;QAClC,QAAQ,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC;KACpC;IAQD;;;;OAIG;IACH,sBAAsB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,IAAI;IAQxD;;OAEG;IACH,qBAAqB,IAAI,IAAI;IAiB7B;;;;OAIG;IACH,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAkBtC;;;;;;OAMG;IACG,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,GAAE,MAAa,GAAG,OAAO,CAAC,MAAM,CAAC;IAI3E;;;;;;;;;;;;;;OAcG;IACH,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAO3C;;;;;OAKG;IACH,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAO5C;;OAEG;IACH,cAAc,IAAI,IAAI;IActB;;OAEG;IACH,aAAa,IAAI,IAAI;IAOrB;;OAEG;IACH,OAAO,IAAI,IAAI;IAKf;;OAEG;IACH,OAAO,CAAC,WAAW;IAInB;;OAEG;IACH,OAAO,CAAC,IAAI;CAYb"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "solver-sdk",
3
- "version": "6.1.7",
3
+ "version": "6.2.1",
4
4
  "description": "SDK for API integration",
5
5
  "main": "dist/cjs/index.js",
6
6
  "module": "dist/esm/index.js",