From 25482dcb38c659d1f485129738bc2de68a831706 Mon Sep 17 00:00:00 2001 From: Sebastian Malton Date: Mon, 9 Jan 2023 11:05:40 -0500 Subject: [PATCH] Fix typings Signed-off-by: Sebastian Malton --- .../node-shell-session/open.injectable.ts | 2 ++ src/renderer/api/__tests__/websocket-api.test.ts | 8 +++++++- .../api/create-terminal-api.injectable.ts | 2 ++ ...rnetes-cluster-context-menu-open.injectable.ts | 2 +- src/renderer/components/+namespaces/store.ts | 7 +------ .../ingress-class-store.injectable.ts | 15 +++++++-------- src/renderer/components/dock/logs/tab-store.ts | 8 ++------ .../port-forward-store/port-forward-store.ts | 2 -- 8 files changed, 22 insertions(+), 24 deletions(-) diff --git a/src/main/shell-session/node-shell-session/open.injectable.ts b/src/main/shell-session/node-shell-session/open.injectable.ts index 47b97994b7..cce3fa5f36 100644 --- a/src/main/shell-session/node-shell-session/open.injectable.ts +++ b/src/main/shell-session/node-shell-session/open.injectable.ts @@ -19,6 +19,7 @@ import appNameInjectable from "../../../common/vars/app-name.injectable"; import buildVersionInjectable from "../../vars/build-version/build-version.injectable"; import emitAppEventInjectable from "../../../common/app-event-bus/emit-event.injectable"; import statInjectable from "../../../common/fs/stat.injectable"; +import createKubeApiInjectable from "../../../common/k8s-api/create-kube-api.injectable"; export interface NodeShellSessionArgs { websocket: WebSocket; @@ -45,6 +46,7 @@ const openNodeShellSessionInjectable = getInjectable({ spawnPty: di.inject(spawnPtyInjectable), emitAppEvent: di.inject(emitAppEventInjectable), stat: di.inject(statInjectable), + createKubeApi: di.inject(createKubeApiInjectable), }; return async (args) => { diff --git a/src/renderer/api/__tests__/websocket-api.test.ts b/src/renderer/api/__tests__/websocket-api.test.ts index 5dda62b60c..8b0c4e27b7 100644 --- a/src/renderer/api/__tests__/websocket-api.test.ts +++ b/src/renderer/api/__tests__/websocket-api.test.ts @@ -3,6 +3,8 @@ * Licensed under MIT License. See LICENSE in root directory for more information. */ +import { getDiForUnitTesting } from "../../getDiForUnitTesting"; +import defaultWebsocketApiParamsInjectable from "../default-websocket-api-params.injectable"; import type { WebSocketEvents } from "../websocket-api"; import { WebSocketApi } from "../websocket-api"; @@ -16,7 +18,11 @@ describe("WebsocketApi tests", () => { let api: TestWebSocketApi; beforeEach(() => { - api = new TestWebSocketApi({}); + const di = getDiForUnitTesting({ doGeneralOverrides: true }); + + api = new TestWebSocketApi({ + defaultParams: di.inject(defaultWebsocketApiParamsInjectable), + }, {}); }); describe("before connection", () => { diff --git a/src/renderer/api/create-terminal-api.injectable.ts b/src/renderer/api/create-terminal-api.injectable.ts index 97592f0dab..63581623bf 100644 --- a/src/renderer/api/create-terminal-api.injectable.ts +++ b/src/renderer/api/create-terminal-api.injectable.ts @@ -6,6 +6,7 @@ import { getInjectable } from "@ogre-tools/injectable"; import assert from "assert"; import loggerInjectable from "../../common/logger.injectable"; import hostedClusterIdInjectable from "../cluster-frame-context/hosted-cluster-id.injectable"; +import defaultWebsocketApiParamsInjectable from "./default-websocket-api-params.injectable"; import type { TerminalApiDependencies, TerminalApiQuery } from "./terminal-api"; import { TerminalApi } from "./terminal-api"; @@ -17,6 +18,7 @@ const createTerminalApiInjectable = getInjectable({ const hostedClusterId = di.inject(hostedClusterIdInjectable); const deps: Omit = { logger: di.inject(loggerInjectable), + defaultParams: di.inject(defaultWebsocketApiParamsInjectable), }; return (query) => { 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 73cc988e2c..99a3bfa9f3 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 @@ -42,7 +42,7 @@ const setupKubernetesClusterContextMenuOpenInjectable = getInjectable({ if (result.error) { logger.error("[KUBERNETES-CLUSTER]: failed to parse kubeconfig file", result.error); } else { - openDeleteClusterDialog({ cluster, config: result.config }); + openDeleteClusterDialog(result.config, cluster); } }, }); diff --git a/src/renderer/components/+namespaces/store.ts b/src/renderer/components/+namespaces/store.ts index 4c178a8a96..78f836e807 100644 --- a/src/renderer/components/+namespaces/store.ts +++ b/src/renderer/components/+namespaces/store.ts @@ -23,12 +23,7 @@ export class NamespaceStore extends KubeObjectStore { makeObservable(this); autoBind(this); - this.init(); - } - - private async init() { - await this.dependencies.storage.whenReady; - + // initialize allowed namespaces const { allowedNamespaces } = this; const selectedNamespaces = this.dependencies.storage.get(); // raw namespaces, undefined on first load diff --git a/src/renderer/components/+network-ingresses/ingress-class-store.injectable.ts b/src/renderer/components/+network-ingresses/ingress-class-store.injectable.ts index 20b7a4d4bc..9379b4ff59 100644 --- a/src/renderer/components/+network-ingresses/ingress-class-store.injectable.ts +++ b/src/renderer/components/+network-ingresses/ingress-class-store.injectable.ts @@ -4,15 +4,13 @@ */ import assert from "assert"; import { getInjectable } from "@ogre-tools/injectable"; -import { - kubeObjectStoreInjectionToken, -} from "../../../common/k8s-api/api-manager/manager.injectable"; -import ingressClassApiInjectable - from "../../../common/k8s-api/endpoints/ingress-class.api.injectable"; +import { kubeObjectStoreInjectionToken } from "../../../common/k8s-api/api-manager/manager.injectable"; +import ingressClassApiInjectable from "../../../common/k8s-api/endpoints/ingress-class.api.injectable"; import { IngressClassStore } from "./ingress-class-store"; -import clusterFrameContextForNamespacedResourcesInjectable - from "../../cluster-frame-context/for-namespaced-resources.injectable"; + import storesAndApisCanBeCreatedInjectable from "../../stores-apis-can-be-created.injectable"; +import clusterFrameContextForClusterScopedResourcesInjectable from "../../cluster-frame-context/for-cluster-scoped-resources.injectable"; +import loggerInjectable from "../../../common/logger.injectable"; const ingressClassStoreInjectable = getInjectable({ id: "ingress-class-store", @@ -23,7 +21,8 @@ const ingressClassStoreInjectable = getInjectable({ const api = di.inject(ingressClassApiInjectable); return new IngressClassStore({ - context: di.inject(clusterFrameContextForNamespacedResourcesInjectable), + context: di.inject(clusterFrameContextForClusterScopedResourcesInjectable), + logger: di.inject(loggerInjectable), }, api); }, diff --git a/src/renderer/components/dock/logs/tab-store.ts b/src/renderer/components/dock/logs/tab-store.ts index 9cc83b9610..4ba6725432 100644 --- a/src/renderer/components/dock/logs/tab-store.ts +++ b/src/renderer/components/dock/logs/tab-store.ts @@ -6,7 +6,7 @@ import { DockTabStore } from "../dock-tab-store/dock-tab.store"; import type { TabId } from "../dock/store"; import { logTabDataValidator } from "./log-tab-data.validator"; -import type { CreateStorage } from "../../../utils/create-storage/create-storage"; +import type { DockTabStoreDependencies } from "../dock-tab-store/dock-tab.store"; export interface LogTabOwnerRef { /** @@ -56,12 +56,8 @@ export interface LogTabData { showPrevious: boolean; } -interface Dependencies { - createStorage: CreateStorage; -} - export class LogTabStore extends DockTabStore { - constructor(protected dependencies: Dependencies) { + constructor(dependencies: DockTabStoreDependencies) { super(dependencies, { storageKey: "pod_logs", }); diff --git a/src/renderer/port-forward/port-forward-store/port-forward-store.ts b/src/renderer/port-forward/port-forward-store/port-forward-store.ts index b68903b171..288ccd6e08 100644 --- a/src/renderer/port-forward/port-forward-store/port-forward-store.ts +++ b/src/renderer/port-forward/port-forward-store/port-forward-store.ts @@ -34,8 +34,6 @@ export class PortForwardStore extends ItemStore { } private async init() { - await this.dependencies.storage.whenReady; - const savedPortForwards = this.dependencies.storage.get(); // undefined on first load if (Array.isArray(savedPortForwards) && savedPortForwards.length > 0) {