diff --git a/package-lock.json b/package-lock.json index c7a2d70614..475b76734d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -32653,6 +32653,7 @@ } }, "packages/infrastructure/typescript": { + "name": "@k8slens/typescript", "version": "0.0.1", "license": "MIT", "dependencies": { diff --git a/packages/core/src/renderer/components/kube-object-meta/kube-object-meta.tsx b/packages/core/src/renderer/components/kube-object-meta/kube-object-meta.tsx index a61ee7dd60..b0ad4bac1a 100644 --- a/packages/core/src/renderer/components/kube-object-meta/kube-object-meta.tsx +++ b/packages/core/src/renderer/components/kube-object-meta/kube-object-meta.tsx @@ -19,6 +19,8 @@ import { withInjectables } from "@ogre-tools/injectable-react"; import getDetailsUrlInjectable from "../kube-detail-params/get-details-url.injectable"; import apiManagerInjectable from "../../../common/k8s-api/api-manager/manager.injectable"; import loggerInjectable from "../../../common/logger.injectable"; +import type { NamespaceApi } from "../../../common/k8s-api/endpoints"; +import namespaceApiInjectable from "../../../common/k8s-api/endpoints/namespace.api.injectable"; export interface KubeObjectMetaProps { object: KubeObject; @@ -28,20 +30,24 @@ export interface KubeObjectMetaProps { interface Dependencies { getDetailsUrl: GetDetailsUrl; apiManager: ApiManager; + namespaceApi: NamespaceApi; logger: Logger; } -const NonInjectedKubeObjectMeta = observer(({ - apiManager, - getDetailsUrl, - object, - hideFields = [ - "uid", - "resourceVersion", - "selfLink", - ], - logger, -}: Dependencies & KubeObjectMetaProps) => { +const NonInjectedKubeObjectMeta = observer(( + { + apiManager, + getDetailsUrl, + object, + hideFields = [ + "uid", + "resourceVersion", + "selfLink", + ], + logger, + namespaceApi, + } + : Dependencies & KubeObjectMetaProps) => { if (!object) { return null; } @@ -59,6 +65,10 @@ const NonInjectedKubeObjectMeta = observer(({ getFinalizers, getId, getName, metadata: { creationTimestamp }, } = object; const ownerRefs = object.getOwnerRefs(); + const namespace = getNs(); + const namespaceDetailsUrl = namespace ? getDetailsUrl( + namespaceApi.formatUrlForNotListing({ name: namespace }), + ) : ""; return ( <> @@ -71,8 +81,8 @@ const NonInjectedKubeObjectMeta = observer(({ {getName()} -