mirror of
https://github.com/lensapp/lens.git
synced 2025-05-20 05:10:56 +00:00
Improved metrics for updating application (#5607)
This commit is contained in:
1 parent
7b0521f3b2
commit
5c049ecca0
15 files changed
+373
-32
No files matched your search
@@ -0,0 +1,45 @@
|
||||
/**
|
||||
* Copyright (c) OpenLens Authors. All rights reserved.
|
||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
||||
*/
|
||||
import { getInjectable } from "@ogre-tools/injectable";
|
||||
import electronQuitAndInstallUpdateInjectable from "../electron-app/features/electron-quit-and-install-update.injectable";
|
||||
import { getCurrentDateTime } from "../../common/utils/date/get-current-date-time";
|
||||
import emitEventInjectable from "../../common/app-event-bus/emit-event.injectable";
|
||||
import discoveredUpdateVersionInjectable from "../../common/application-update/discovered-update-version/discovered-update-version.injectable";
|
||||
|
||||
const quitAndInstallUpdateInjectable = getInjectable({
|
||||
id: "quit-and-install-update",
|
||||
|
||||
instantiate: (di) => {
|
||||
const electronQuitAndInstallUpdate = di.inject(
|
||||
electronQuitAndInstallUpdateInjectable,
|
||||
);
|
||||
|
||||
const emitEvent = di.inject(emitEventInjectable);
|
||||
const discoveredUpdateVersion = di.inject(discoveredUpdateVersionInjectable);
|
||||
|
||||
return () => {
|
||||
const discoveredVersion = discoveredUpdateVersion.value.get();
|
||||
|
||||
if (!discoveredVersion) {
|
||||
throw new Error("Tried to install update but no update was discovered.");
|
||||
}
|
||||
|
||||
emitEvent({
|
||||
name: "app",
|
||||
action: "start-installing-update",
|
||||
|
||||
params: {
|
||||
version: discoveredVersion.version,
|
||||
updateChannel: discoveredVersion.updateChannel.id,
|
||||
currentDateTime: getCurrentDateTime(),
|
||||
},
|
||||
});
|
||||
|
||||
electronQuitAndInstallUpdate();
|
||||
};
|
||||
},
|
||||
});
|
||||
|
||||
export default quitAndInstallUpdateInjectable;
|
||||
Reference in new issue
Block a user