Refactor auto-updater service and App component

This commit is contained in:
shidorien
2024-01-05 17:16:35 +01:00
parent 4cf242f683
commit 61889c0b5b
2 changed files with 20 additions and 18 deletions
+6 -17
View File
@@ -5,16 +5,16 @@ import { ModalService } from "renderer/services/modale.service";
import { ChangelogModal } from "renderer/components/modal/modal-types/chabgelog-modal/changelog-modal.component";
import { ConfigurationService } from "./configuration.service";
import { Observable, lastValueFrom } from "rxjs";
import { lte } from "semver";
export interface Changelog {
[version: string]: ChangelogVersion;
[version: string]: ChangelogVersion;
}
export interface ChangelogVersion {
htmlBody: string;
title: string;
timestampPublished: number;
version: string;
htmlBody: string;
title: string;
timestampPublished: number;
version: string;
}
export class AutoUpdaterService {
private static instance: AutoUpdaterService;
@@ -111,15 +111,4 @@ export class AutoUpdaterService {
this.modal.openModal(ChangelogModal, changelog);
}
public checkIsUpdated(): void {
lastValueFrom(this.getAppVersion()).then(appVersion => {
const lastAppVersion = this.getLastAppVersion();
if (!lastAppVersion) { return;}
if(lte(appVersion,lastAppVersion)){ return; }
this.setLastAppVersion();
this.showChangelog(appVersion);
});
}
}
+14 -1
View File
@@ -23,6 +23,7 @@ import { ConfigurationService } from "renderer/services/configuration.service";
import { OsDiagnosticService } from "renderer/services/os-diagnostic.service";
import { useService } from "renderer/hooks/use-service.hook";
import { AutoUpdaterService } from "renderer/services/auto-updater.service";
import { lte } from "semver"
export default function App() {
useService(OsDiagnosticService);
@@ -38,10 +39,22 @@ export default function App() {
const navigate = useNavigate();
useEffect(() => {
autoUpdater.checkIsUpdated();
checkIsUpdated();
checkOneClicks();
}, []);
const checkIsUpdated = async () => {
const appVersion = await lastValueFrom(autoUpdater.getAppVersion());
const lastAppVersion = autoUpdater.getLastAppVersion();
if (!lastAppVersion || lte(appVersion, lastAppVersion)) {
return;
}
autoUpdater.setLastAppVersion();
autoUpdater.showChangelog(appVersion);
};
const checkOneClicks = async () => {
if (config.get("not-remind-oneclick") === true) {
return;