From 1a32c1fd414cbb247910f00992dea9ff97c99d11 Mon Sep 17 00:00:00 2001 From: Sebastian Malton Date: Wed, 14 Sep 2022 12:19:39 -0400 Subject: [PATCH] Convert DirectoryForBinaries to LazyInitializableState Signed-off-by: Sebastian Malton --- .../directory-for-binaries.injectable.ts | 19 ++++++++++++++++++ .../directory-for-binaries.injectable.ts | 20 ------------------- ...rectory-for-kubectl-binaries.injectable.ts | 10 +++++----- 3 files changed, 24 insertions(+), 25 deletions(-) create mode 100644 src/common/app-paths/directory-for-binaries.injectable.ts delete mode 100644 src/common/app-paths/directory-for-binaries/directory-for-binaries.injectable.ts diff --git a/src/common/app-paths/directory-for-binaries.injectable.ts b/src/common/app-paths/directory-for-binaries.injectable.ts new file mode 100644 index 0000000000..720bf32281 --- /dev/null +++ b/src/common/app-paths/directory-for-binaries.injectable.ts @@ -0,0 +1,19 @@ +/** + * Copyright (c) OpenLens Authors. All rights reserved. + * Licensed under MIT License. See LICENSE in root directory for more information. + */ +import directoryForUserDataInjectable from "./directory-for-user-data/directory-for-user-data.injectable"; +import { createLazyInitializableState } from "../initializable-state/create-lazy"; +import joinPathsInjectable from "../path/join-paths.injectable"; + +const directoryForBinariesInjectable = createLazyInitializableState({ + id: "directory-for-binaries", + init: (di) => { + const joinPaths = di.inject(joinPathsInjectable); + const directoryForUserData = di.inject(directoryForUserDataInjectable); + + return joinPaths(directoryForUserData.get(), "binaries"); + }, +}); + +export default directoryForBinariesInjectable; diff --git a/src/common/app-paths/directory-for-binaries/directory-for-binaries.injectable.ts b/src/common/app-paths/directory-for-binaries/directory-for-binaries.injectable.ts deleted file mode 100644 index f8a55b041c..0000000000 --- a/src/common/app-paths/directory-for-binaries/directory-for-binaries.injectable.ts +++ /dev/null @@ -1,20 +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 directoryForUserDataInjectable from "../directory-for-user-data/directory-for-user-data.injectable"; -import joinPathsInjectable from "../../path/join-paths.injectable"; - -const directoryForBinariesInjectable = getInjectable({ - id: "directory-for-binaries", - - instantiate: (di) => { - const joinPaths = di.inject(joinPathsInjectable); - const directoryForUserData = di.inject(directoryForUserDataInjectable); - - return joinPaths(directoryForUserData, "binaries"); - }, -}); - -export default directoryForBinariesInjectable; 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/directory-for-kubectl-binaries.injectable.ts index c1ef1b23f5..3a28184266 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/directory-for-kubectl-binaries.injectable.ts @@ -2,18 +2,18 @@ * 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 directoryForBinariesInjectable from "../directory-for-binaries/directory-for-binaries.injectable"; +import directoryForBinariesInjectable from "../directory-for-binaries.injectable"; import joinPathsInjectable from "../../path/join-paths.injectable"; +import { createLazyInitializableState } from "../../initializable-state/create-lazy"; -const directoryForKubectlBinariesInjectable = getInjectable({ +const directoryForKubectlBinariesInjectable = createLazyInitializableState({ id: "directory-for-kubectl-binaries", - instantiate: (di) => { + init: (di) => { const joinPaths = di.inject(joinPathsInjectable); const directoryForBinaries = di.inject(directoryForBinariesInjectable); - return joinPaths(directoryForBinaries, "kubectl"); + return joinPaths(directoryForBinaries.get(), "kubectl"); }, });