diff --git a/src/common/k8s-api/kube-object.store.ts b/src/common/k8s-api/kube-object.store.ts index 8634e222ac..0af08e560c 100644 --- a/src/common/k8s-api/kube-object.store.ts +++ b/src/common/k8s-api/kube-object.store.ts @@ -355,7 +355,7 @@ export abstract class KubeObjectStore< async loadFromPath(resourcePath: string) { const { namespace, name } = parseKubeApi(resourcePath); - assert(name && namespace, "Both name and namesapce must be part of resourcePath"); + assert(name, "name must be part of resourcePath"); return this.load({ name, namespace }); } diff --git a/src/renderer/components/kube-object-details/kube-object-details.tsx b/src/renderer/components/kube-object-details/kube-object-details.tsx index 047df72cd4..e049cc4640 100644 --- a/src/renderer/components/kube-object-details/kube-object-details.tsx +++ b/src/renderer/components/kube-object-details/kube-object-details.tsx @@ -8,7 +8,7 @@ import "./kube-object-details.scss"; import React from "react"; import { disposeOnUnmount, observer } from "mobx-react"; import type { IComputedValue } from "mobx"; -import { computed, observable, reaction, makeObservable } from "mobx"; +import { observable, reaction, makeObservable } from "mobx"; import { Drawer } from "../drawer"; import type { KubeObject } from "../../../common/k8s-api/kube-object"; import { Spinner } from "../spinner"; @@ -51,11 +51,11 @@ class NonInjectedKubeObjectDetails extends React.Component { makeObservable(this); } - @computed get path() { + get path() { return this.props.kubeDetailsUrlParam.get(); } - @computed get object() { + get object() { return this.props.kubeObject.get(); } @@ -102,43 +102,32 @@ class NonInjectedKubeObjectDetails extends React.Component { } renderContents(object: KubeObject) { - const { isLoading, loadingError } = this; const details = this.props.detailComponents.get(); - const getContents = () => { - if (details.length === 0) { - const crd = this.props.customResourceDefinitionStore.getByObject(object); + if (details.length === 0) { + const crd = this.props.customResourceDefinitionStore.getByObject(object); - /** + /** * This is a fallback so that if a custom resource object doesn't have * any defined details we should try and display at least some details */ - if (crd) { - return ( - - ); - } else { - // if we still don't have any details to show, just show the standard object metadata - return ; - } + if (crd) { + return ( + + ); + } else { + // if we still don't have any details to show, just show the standard object metadata + return ; } + } - return details.map((DetailComponent, index) => ( - - )); - }; - - return ( - <> - {isLoading && } - {loadingError &&
{loadingError}
} - {getContents()} - - ); + return details.map((DetailComponent, index) => ( + + )); } render() { @@ -152,6 +141,8 @@ class NonInjectedKubeObjectDetails extends React.Component { toolbar={object && } onClose={this.props.hideDetails} > + {isLoading && } + {loadingError &&
{loadingError}
} {object && this.renderContents(object)} );