Add update service

This commit is contained in:
2025-06-23 19:42:48 +08:00
parent 4f8272e290
commit ea025e3f5d
19 changed files with 639 additions and 270 deletions

View File

@@ -1001,11 +1001,6 @@ export class UpdatesConfig {
*/
"autoUpdate": boolean;
/**
* 是否启用测试版
*/
"betaChannel": boolean;
/** Creates a new UpdatesConfig instance. */
constructor($$source: Partial<UpdatesConfig> = {}) {
if (!("version" in $$source)) {
@@ -1014,9 +1009,6 @@ export class UpdatesConfig {
if (!("autoUpdate" in $$source)) {
this["autoUpdate"] = false;
}
if (!("betaChannel" in $$source)) {
this["betaChannel"] = false;
}
Object.assign(this, $$source);
}

View File

@@ -10,6 +10,7 @@ import * as MigrationService from "./migrationservice.js";
import * as StartupService from "./startupservice.js";
import * as SystemService from "./systemservice.js";
import * as TrayService from "./trayservice.js";
import * as UpdateService from "./updateservice.js";
export {
ConfigService,
DialogService,
@@ -19,7 +20,8 @@ export {
MigrationService,
StartupService,
SystemService,
TrayService
TrayService,
UpdateService
};
export * from "./models.js";

View File

@@ -114,3 +114,70 @@ export enum MigrationStatus {
MigrationStatusCompleted = "completed",
MigrationStatusFailed = "failed",
};
/**
* UpdateCheckResult 更新检查结果
*/
export class UpdateCheckResult {
/**
* 是否有更新
*/
"hasUpdate": boolean;
/**
* 当前版本
*/
"currentVer": string;
/**
* 最新版本
*/
"latestVer": string;
/**
* 发布说明
*/
"releaseNotes": string;
/**
* 发布页面URL
*/
"releaseURL": string;
/**
* 错误信息
*/
"error": string;
/** Creates a new UpdateCheckResult instance. */
constructor($$source: Partial<UpdateCheckResult> = {}) {
if (!("hasUpdate" in $$source)) {
this["hasUpdate"] = false;
}
if (!("currentVer" in $$source)) {
this["currentVer"] = "";
}
if (!("latestVer" in $$source)) {
this["latestVer"] = "";
}
if (!("releaseNotes" in $$source)) {
this["releaseNotes"] = "";
}
if (!("releaseURL" in $$source)) {
this["releaseURL"] = "";
}
if (!("error" in $$source)) {
this["error"] = "";
}
Object.assign(this, $$source);
}
/**
* Creates a new UpdateCheckResult instance from a string or object.
*/
static createFrom($$source: any = {}): UpdateCheckResult {
let $$parsedSource = typeof $$source === 'string' ? JSON.parse($$source) : $$source;
return new UpdateCheckResult($$parsedSource as Partial<UpdateCheckResult>);
}
}

View File

@@ -0,0 +1,30 @@
// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL
// This file is automatically generated. DO NOT EDIT
/**
* UpdateService 更新服务
* @module
*/
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
// @ts-ignore: Unused imports
import {Call as $Call, Create as $Create} from "@wailsio/runtime";
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
// @ts-ignore: Unused imports
import * as $models from "./models.js";
/**
* CheckForUpdates 检查更新
*/
export function CheckForUpdates(): Promise<$models.UpdateCheckResult> & { cancel(): void } {
let $resultPromise = $Call.ByID(3024322786) as any;
let $typingPromise = $resultPromise.then(($result: any) => {
return $$createType0($result);
}) as any;
$typingPromise.cancel = $resultPromise.cancel.bind($resultPromise);
return $typingPromise;
}
// Private type creation functions
const $$createType0 = $models.UpdateCheckResult.createFrom;