mirror of
https://github.com/Zagrios/bs-manager.git
synced 2026-07-03 14:08:25 +02:00
Refactor auto-updater service and App component
This commit is contained in:
@@ -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);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
|
||||
Reference in New Issue
Block a user