diff --git a/src/renderer/components/delete-cluster-dialog/delete-cluster-dialog.tsx b/src/renderer/components/delete-cluster-dialog/delete-cluster-dialog.tsx index 6ab4e4e88a..01cf35eec8 100644 --- a/src/renderer/components/delete-cluster-dialog/delete-cluster-dialog.tsx +++ b/src/renderer/components/delete-cluster-dialog/delete-cluster-dialog.tsx @@ -20,7 +20,7 @@ */ import styles from "./delete-cluster-dialog.module.css"; -import { makeObservable, observable } from "mobx"; +import { computed, makeObservable, observable } from "mobx"; import { observer } from "mobx-react"; import React from "react"; @@ -122,6 +122,18 @@ export class DeleteClusterDialog extends React.Component { this.onClose(); } + @computed get disableDelete() { + const { cluster, config } = dialogState; + const noContextsAvailable = config.contexts.filter(context => context.name !== cluster.contextName).length == 0; + const newContextNotSelected = this.newCurrentContext === ""; + + if (noContextsAvailable) { + return false; + } + + return this.showContextSwitch && newContextNotSelected; + } + isCurrentContext() { return dialogState.config.currentContext == dialogState.cluster.contextName; } @@ -142,6 +154,7 @@ export class DeleteClusterDialog extends React.Component {