diff --git a/src/common/k8s-api/api-kube.injectable.ts b/src/common/k8s-api/api-kube.injectable.ts index 45f3a5d754..c3d051d9bd 100644 --- a/src/common/k8s-api/api-kube.injectable.ts +++ b/src/common/k8s-api/api-kube.injectable.ts @@ -4,6 +4,7 @@ */ import { getInjectable } from "@ogre-tools/injectable"; import assert from "assert"; +import { onApiError } from "../../renderer/api/on-api-error"; import { apiKubePrefix, isDevelopment } from "../vars"; import { createStoresAndApisInjectionToken } from "./create-stores-apis.token"; import { KubeJsonApi } from "./kube-json-api"; @@ -13,7 +14,7 @@ const apiKubeInjectable = getInjectable({ instantiate: (di) => { assert(di.inject(createStoresAndApisInjectionToken), "apiKube is only available in certain environments"); - return new KubeJsonApi({ + const apiKube = new KubeJsonApi({ serverAddress: `http://127.0.0.1:${window.location.port}`, apiBase: apiKubePrefix, debug: isDevelopment, @@ -22,6 +23,10 @@ const apiKubeInjectable = getInjectable({ "Host": window.location.host, }, }); + + apiKube.onError.addListener(onApiError); + + return apiKube; }, }); diff --git a/src/renderer/api/setup-on-api-errors.injectable.ts b/src/renderer/api/setup-on-api-errors.injectable.ts index 77e512d6f1..3ea5117594 100644 --- a/src/renderer/api/setup-on-api-errors.injectable.ts +++ b/src/renderer/api/setup-on-api-errors.injectable.ts @@ -4,16 +4,12 @@ */ import { getInjectable } from "@ogre-tools/injectable"; import { apiBase } from "../../common/k8s-api"; -import apiKubeInjectable from "../../common/k8s-api/api-kube.injectable"; import { onApiError } from "./on-api-error"; const setupOnApiErrorListenersInjectable = getInjectable({ id: "setup-on-api-error-listeners", - setup: async (di) => { - const apiKube = await di.inject(apiKubeInjectable); - + setup: () => { apiBase?.onError.addListener(onApiError); - apiKube?.onError.addListener(onApiError); }, instantiate: () => undefined, }); diff --git a/src/renderer/create-stores-apis.injectable.ts b/src/renderer/create-stores-apis.injectable.ts index f45c6b906d..1a724e64dd 100644 --- a/src/renderer/create-stores-apis.injectable.ts +++ b/src/renderer/create-stores-apis.injectable.ts @@ -10,7 +10,6 @@ const createStoresAndApisInjectable = getInjectable({ id: "create-stores-and-apis", instantiate: () => isClusterPageContext(), injectionToken: createStoresAndApisInjectionToken, - causesSideEffects: true, }); export default createStoresAndApisInjectable;