From 731aec1bb8d9cdd92926f8096bf278c41f696791 Mon Sep 17 00:00:00 2001 From: Sebastian Malton Date: Fri, 9 Dec 2022 11:33:58 -0500 Subject: [PATCH] Fix init ordering during start frame Signed-off-by: Sebastian Malton --- .../renderer/init-store.injectable.ts | 2 -- .../app-paths/setup-app-paths.injectable.ts | 4 +-- .../load-monaco-themes.injectable.ts | 4 +-- ...tes-cluster-catalog-add-menu.injectable.ts | 2 -- ...es-cluster-context-menu-open.injectable.ts | 2 -- .../runnables/setup-sentry.injectable.ts | 16 +++++------ src/renderer/sentry/initialize.injectable.ts | 28 ------------------- .../stores/init-user-store.injectable.ts | 6 +--- .../start-listening-of-channels.injectable.ts | 2 -- 9 files changed, 12 insertions(+), 54 deletions(-) delete mode 100644 src/renderer/sentry/initialize.injectable.ts diff --git a/src/features/file-system-provisioner/renderer/init-store.injectable.ts b/src/features/file-system-provisioner/renderer/init-store.injectable.ts index 95925270aa..d241dcad38 100644 --- a/src/features/file-system-provisioner/renderer/init-store.injectable.ts +++ b/src/features/file-system-provisioner/renderer/init-store.injectable.ts @@ -4,7 +4,6 @@ */ import { getInjectable } from "@ogre-tools/injectable"; import fileSystemProvisionerStoreInjectable from "../../../extensions/extension-loader/file-system-provisioner-store/file-system-provisioner-store.injectable"; -import setupAppPathsInjectable from "../../../renderer/app-paths/setup-app-paths.injectable"; import { beforeFrameStartsInjectionToken } from "../../../renderer/before-frame-starts/tokens"; const initFileSystemProvisionerStoreInjectable = getInjectable({ @@ -16,7 +15,6 @@ const initFileSystemProvisionerStoreInjectable = getInjectable({ store.load(); }, - runAfter: di.inject(setupAppPathsInjectable), }), injectionToken: beforeFrameStartsInjectionToken, }); diff --git a/src/renderer/app-paths/setup-app-paths.injectable.ts b/src/renderer/app-paths/setup-app-paths.injectable.ts index e9030edb43..21bb1a0ed1 100644 --- a/src/renderer/app-paths/setup-app-paths.injectable.ts +++ b/src/renderer/app-paths/setup-app-paths.injectable.ts @@ -4,7 +4,7 @@ */ import { getInjectable } from "@ogre-tools/injectable"; import appPathsStateInjectable from "../../common/app-paths/app-paths-state.injectable"; -import { beforeFrameStartsInjectionToken } from "../before-frame-starts/tokens"; +import { evenBeforeFrameStartsInjectionToken } from "../before-frame-starts/tokens"; import { appPathsChannel } from "../../common/app-paths/app-paths-channel"; import { requestFromChannelInjectionToken } from "../../common/utils/channel/request-from-channel-injection-token"; @@ -22,7 +22,7 @@ const setupAppPathsInjectable = getInjectable({ }, }), - injectionToken: beforeFrameStartsInjectionToken, + injectionToken: evenBeforeFrameStartsInjectionToken, }); export default setupAppPathsInjectable; diff --git a/src/renderer/before-frame-starts/runnables/load-monaco-themes.injectable.ts b/src/renderer/before-frame-starts/runnables/load-monaco-themes.injectable.ts index e425b7192f..02a00523ad 100644 --- a/src/renderer/before-frame-starts/runnables/load-monaco-themes.injectable.ts +++ b/src/renderer/before-frame-starts/runnables/load-monaco-themes.injectable.ts @@ -5,7 +5,7 @@ import { getInjectable } from "@ogre-tools/injectable"; import { customMonacoThemeInjectionToken } from "../../components/monaco-editor"; import addNewMonacoThemeInjectable from "../../monaco/add-new-theme.injectable"; -import { evenBeforeFrameStartsInjectionToken } from "../tokens"; +import { beforeFrameStartsInjectionToken } from "../tokens"; const loadMonacoThemesInjectable = getInjectable({ id: "load-monaco-themes", @@ -18,7 +18,7 @@ const loadMonacoThemesInjectable = getInjectable({ customThemes.forEach(addNewMonacoTheme); }, }), - injectionToken: evenBeforeFrameStartsInjectionToken, + injectionToken: beforeFrameStartsInjectionToken, }); export default loadMonacoThemesInjectable; diff --git a/src/renderer/before-frame-starts/runnables/setup-kubernetes-cluster-catalog-add-menu.injectable.ts b/src/renderer/before-frame-starts/runnables/setup-kubernetes-cluster-catalog-add-menu.injectable.ts index b422d895c6..406b1641af 100644 --- a/src/renderer/before-frame-starts/runnables/setup-kubernetes-cluster-catalog-add-menu.injectable.ts +++ b/src/renderer/before-frame-starts/runnables/setup-kubernetes-cluster-catalog-add-menu.injectable.ts @@ -8,7 +8,6 @@ import navigateToAddClusterInjectable from "../../../common/front-end-routing/ro import isLinuxInjectable from "../../../common/vars/is-linux.injectable"; import isWindowsInjectable from "../../../common/vars/is-windows.injectable"; import openPathPickingDialogInjectable from "../../../features/path-picking-dialog/renderer/pick-paths.injectable"; -import setupAppPathsInjectable from "../../app-paths/setup-app-paths.injectable"; import addSyncEntriesInjectable from "../../initializers/add-sync-entries.injectable"; import { beforeFrameStartsInjectionToken } from "../tokens"; @@ -75,7 +74,6 @@ const setupKubernetesClusterCatalogAddMenuListenerInjectable = getInjectable({ } }); }, - runAfter: di.inject(setupAppPathsInjectable), }), injectionToken: beforeFrameStartsInjectionToken, }); diff --git a/src/renderer/before-frame-starts/runnables/setup-kubernetes-cluster-context-menu-open.injectable.ts b/src/renderer/before-frame-starts/runnables/setup-kubernetes-cluster-context-menu-open.injectable.ts index f1175f1416..150620c22a 100644 --- a/src/renderer/before-frame-starts/runnables/setup-kubernetes-cluster-context-menu-open.injectable.ts +++ b/src/renderer/before-frame-starts/runnables/setup-kubernetes-cluster-context-menu-open.injectable.ts @@ -8,7 +8,6 @@ import getClusterByIdInjectable from "../../../common/cluster-store/get-by-id.in import readFileInjectable from "../../../common/fs/read-file.injectable"; import { loadConfigFromString } from "../../../common/kube-helpers"; import loggerInjectable from "../../../common/logger.injectable"; -import setupAppPathsInjectable from "../../app-paths/setup-app-paths.injectable"; import openDeleteClusterDialogInjectable from "../../components/delete-cluster-dialog/open.injectable"; import { beforeFrameStartsInjectionToken } from "../tokens"; @@ -50,7 +49,6 @@ const setupKubernetesClusterContextMenuOpenInjectable = getInjectable({ } }); }, - runAfter: di.inject(setupAppPathsInjectable), }), injectionToken: beforeFrameStartsInjectionToken, }); diff --git a/src/renderer/before-frame-starts/runnables/setup-sentry.injectable.ts b/src/renderer/before-frame-starts/runnables/setup-sentry.injectable.ts index f45c877736..cb625d7841 100644 --- a/src/renderer/before-frame-starts/runnables/setup-sentry.injectable.ts +++ b/src/renderer/before-frame-starts/runnables/setup-sentry.injectable.ts @@ -9,16 +9,14 @@ import { init } from "@sentry/electron/renderer"; const setupSentryInjectable = getInjectable({ id: "setup-sentry", - instantiate: (di) => { - const initializeSentryReportingWith = di.inject(initializeSentryReportingWithInjectable); + instantiate: (di) => ({ + id: "setup-sentry", + run: () => { + const initializeSentryReportingWith = di.inject(initializeSentryReportingWithInjectable); - return { - id: "setup-sentry", - run: () => { - initializeSentryReportingWith(init); - }, - }; - }, + initializeSentryReportingWith(init); + }, + }), injectionToken: evenBeforeMainFrameStartsInjectionToken, }); diff --git a/src/renderer/sentry/initialize.injectable.ts b/src/renderer/sentry/initialize.injectable.ts deleted file mode 100644 index 431af3e8f5..0000000000 --- a/src/renderer/sentry/initialize.injectable.ts +++ /dev/null @@ -1,28 +0,0 @@ -/** - * 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 initializeSentryReportingWithInjectable from "../../common/error-reporting/initialize-sentry-reporting.injectable"; -import setupAppPathsInjectable from "../app-paths/setup-app-paths.injectable"; -import { beforeFrameStartsInjectionToken } from "../before-frame-starts/tokens"; -import { init } from "@sentry/electron/renderer"; - -const initializeSentryReportingInjectable = getInjectable({ - id: "initialize-sentry-reporting", - instantiate: (di) => ({ - id: "initialize-sentry-reporting", - run: () => { - // Have to inject this here instead of above so that its dependency on `setupAppPathsInjectable` doesn't throw - const initializeSentryReportingWith = di.inject(initializeSentryReportingWithInjectable); - - if (process.isMainFrame) { - initializeSentryReportingWith(init); - } - }, - runAfter: di.inject(setupAppPathsInjectable), - }), - injectionToken: beforeFrameStartsInjectionToken, -}); - -export default initializeSentryReportingInjectable; diff --git a/src/renderer/stores/init-user-store.injectable.ts b/src/renderer/stores/init-user-store.injectable.ts index c03a4b2b63..a65181ca67 100644 --- a/src/renderer/stores/init-user-store.injectable.ts +++ b/src/renderer/stores/init-user-store.injectable.ts @@ -4,7 +4,6 @@ */ import { getInjectable } from "@ogre-tools/injectable"; import userStoreInjectable from "../../common/user-store/user-store.injectable"; -import setupAppPathsInjectable from "../app-paths/setup-app-paths.injectable"; import { beforeFrameStartsInjectionToken } from "../before-frame-starts/tokens"; import initDefaultUpdateChannelInjectable from "../vars/default-update-channel/init.injectable"; @@ -18,10 +17,7 @@ const initUserStoreInjectable = getInjectable({ return userStore.load(); }, - runAfter: [ - di.inject(initDefaultUpdateChannelInjectable), - di.inject(setupAppPathsInjectable), - ], + runAfter: di.inject(initDefaultUpdateChannelInjectable), }), injectionToken: beforeFrameStartsInjectionToken, }); diff --git a/src/renderer/utils/channel/channel-listeners/start-listening-of-channels.injectable.ts b/src/renderer/utils/channel/channel-listeners/start-listening-of-channels.injectable.ts index ab9224c71b..cbcf63ea76 100644 --- a/src/renderer/utils/channel/channel-listeners/start-listening-of-channels.injectable.ts +++ b/src/renderer/utils/channel/channel-listeners/start-listening-of-channels.injectable.ts @@ -5,7 +5,6 @@ import { getInjectable } from "@ogre-tools/injectable"; import { beforeFrameStartsInjectionToken } from "../../../before-frame-starts/tokens"; import listeningOnMessageChannelsInjectable from "../../../../common/utils/channel/listening-on-message-channels.injectable"; -import setupAppPathsInjectable from "../../../app-paths/setup-app-paths.injectable"; const startListeningOfChannelsInjectable = getInjectable({ id: "start-listening-of-channels-renderer", @@ -17,7 +16,6 @@ const startListeningOfChannelsInjectable = getInjectable({ listeningOfChannels.start(); }, - runAfter: di.inject(setupAppPathsInjectable), }), injectionToken: beforeFrameStartsInjectionToken,