Make ResourceStack fully injectable (#6591)

Signed-off-by: Sebastian Malton <sebastian@malton.name>

Signed-off-by: Sebastian Malton <sebastian@malton.name>
This commit is contained in:
Sebastian Malton authored and GitHub committed 2022-11-24 08:46:53 -05:00
1 parent 055a13d4a9
commit 6142aad5ab
15 files changed
+343 -140

No files matched your search

+1 -9
View File
@@ -4,7 +4,7 @@
*/
import type { OpenDialogOptions } from "electron";
import { clusterActivateHandler, clusterDisconnectHandler, clusterKubectlApplyAllHandler, clusterKubectlDeleteAllHandler, clusterSetFrameIdHandler, clusterStates } from "../../common/ipc/cluster";
import { clusterActivateHandler, clusterDisconnectHandler, clusterSetFrameIdHandler, clusterStates } from "../../common/ipc/cluster";
import type { ClusterId, ClusterState } from "../../common/cluster-types";
import { windowActionHandleChannel, windowLocationChangedChannel, windowOpenAppMenuAsContextMenuChannel, type WindowAction } from "../../common/ipc/window";
import { openFilePickingDialogChannel } from "../../common/ipc/dialog";
@@ -64,14 +64,6 @@ export function requestInitialClusterStates(): Promise<{ id: string; state: Clus
return requestMain(clusterStates);
}
export function requestKubectlApplyAll(clusterId: ClusterId, resources: string[], kubectlArgs: string[]): Promise<{ stderr?: string; stdout?: string }> {
return requestMain(clusterKubectlApplyAllHandler, clusterId, resources, kubectlArgs);
}
export function requestKubectlDeleteAll(clusterId: ClusterId, resources: string[], kubectlArgs: string[]): Promise<{ stderr?: string; stdout?: string }> {
return requestMain(clusterKubectlDeleteAllHandler, clusterId, resources, kubectlArgs);
}
export function requestInitialExtensionDiscovery(): Promise<{ isLoaded: boolean }> {
return requestMain(extensionDiscoveryStateChannel);
}
@@ -0,0 +1,19 @@
/**
* 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 { kubectlApplyAllChannel, kubectlApplyAllInjectionToken } from "../../common/kube-helpers/channels";
import requestFromChannelInjectable from "../utils/channel/request-from-channel.injectable";
const kubectlApplyAllInjectable = getInjectable({
id: "kubectl-apply-all",
instantiate: (di) => {
const requestFromChannel = di.inject(requestFromChannelInjectable);
return (req) => requestFromChannel(kubectlApplyAllChannel, req);
},
injectionToken: kubectlApplyAllInjectionToken,
});
export default kubectlApplyAllInjectable;
@@ -0,0 +1,19 @@
/**
* 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 { kubectlDeleteAllChannel, kubectlDeleteAllInjectionToken } from "../../common/kube-helpers/channels";
import requestFromChannelInjectable from "../utils/channel/request-from-channel.injectable";
const kubectlDeleteAllInjectable = getInjectable({
id: "kubectl-delete-all",
instantiate: (di) => {
const requestFromChannel = di.inject(requestFromChannelInjectable);
return (req) => requestFromChannel(kubectlDeleteAllChannel, req);
},
injectionToken: kubectlDeleteAllInjectionToken,
});
export default kubectlDeleteAllInjectable;