diff --git a/src/common/app-paths/directory-for-kubectl-binaries/directory-for-kubectl-binaries.injectable.ts b/src/common/app-paths/directory-for-kubectl-binaries.injectable.ts similarity index 69% rename from src/common/app-paths/directory-for-kubectl-binaries/directory-for-kubectl-binaries.injectable.ts rename to src/common/app-paths/directory-for-kubectl-binaries.injectable.ts index 3a28184266..178a79ad98 100644 --- a/src/common/app-paths/directory-for-kubectl-binaries/directory-for-kubectl-binaries.injectable.ts +++ b/src/common/app-paths/directory-for-kubectl-binaries.injectable.ts @@ -2,13 +2,12 @@ * Copyright (c) OpenLens Authors. All rights reserved. * Licensed under MIT License. See LICENSE in root directory for more information. */ -import directoryForBinariesInjectable from "../directory-for-binaries.injectable"; -import joinPathsInjectable from "../../path/join-paths.injectable"; -import { createLazyInitializableState } from "../../initializable-state/create-lazy"; +import directoryForBinariesInjectable from "./directory-for-binaries.injectable"; +import { createLazyInitializableState } from "../initializable-state/create-lazy"; +import joinPathsInjectable from "../path/join-paths.injectable"; const directoryForKubectlBinariesInjectable = createLazyInitializableState({ id: "directory-for-kubectl-binaries", - init: (di) => { const joinPaths = di.inject(joinPathsInjectable); const directoryForBinaries = di.inject(directoryForBinariesInjectable); diff --git a/src/features/preferences/renderer/preference-items/kubernetes/kubectl/kubectl-path-to-binary/kubectl-path-to-binary.tsx b/src/features/preferences/renderer/preference-items/kubernetes/kubectl/kubectl-path-to-binary/kubectl-path-to-binary.tsx index ec5482cb88..da70a65cc9 100644 --- a/src/features/preferences/renderer/preference-items/kubernetes/kubectl/kubectl-path-to-binary/kubectl-path-to-binary.tsx +++ b/src/features/preferences/renderer/preference-items/kubernetes/kubectl/kubectl-path-to-binary/kubectl-path-to-binary.tsx @@ -9,11 +9,12 @@ import type { UserStore } from "../../../../../../../common/user-store"; import userStoreInjectable from "../../../../../../../common/user-store/user-store.injectable"; import { observer } from "mobx-react"; import { Input, InputValidators } from "../../../../../../../renderer/components/input"; -import directoryForKubectlBinariesInjectable from "../../../../../../../common/app-paths/directory-for-kubectl-binaries/directory-for-kubectl-binaries.injectable"; +import directoryForKubectlBinariesInjectable from "../../../../../../../common/app-paths/directory-for-kubectl-binaries.injectable"; +import type { LazyInitializableState } from "../../../../../../../common/initializable-state/create-lazy"; interface Dependencies { userStore: UserStore; - defaultPathForKubectlBinaries: string; + defaultPathForKubectlBinaries: LazyInitializableState; } const NonInjectedKubectlPathToBinary = observer( @@ -30,7 +31,7 @@ const NonInjectedKubectlPathToBinary = observer( ; readonly normalizedDownloadPlatform: "darwin" | "linux" | "windows"; readonly normalizedDownloadArch: "amd64" | "arm64" | "386"; readonly kubectlBinaryName: string; @@ -88,12 +89,12 @@ export class Kubectl { return this.dependencies.userStore.kubectlBinariesPath || this.getBundledPath(); } - protected getDownloadDir() { + protected getDownloadDir(): string { if (this.dependencies.userStore.downloadBinariesPath) { return this.dependencies.joinPaths(this.dependencies.userStore.downloadBinariesPath, "kubectl"); } - return this.dependencies.directoryForKubectlBinaries; + return this.dependencies.directoryForKubectlBinaries.get(); } public getPath = async (bundled = false): Promise => {