diff --git a/src/common/k8s-api/endpoints/legacy-globals.ts b/src/common/k8s-api/endpoints/legacy-globals.ts
index a008316a96..282a4eaf1f 100644
--- a/src/common/k8s-api/endpoints/legacy-globals.ts
+++ b/src/common/k8s-api/endpoints/legacy-globals.ts
@@ -9,7 +9,6 @@ import cronJobApiInjectable from "./cron-job.api.injectable";
import jobApiInjectable from "./job.api.injectable";
import networkPolicyApiInjectable from "./network-policy.api.injectable";
import nodeApiInjectable from "./node.api.injectable";
-import persistentVolumeClaimApiInjectable from "./persistent-volume-claim.api.injectable";
import podApiInjectable from "./pod.api.injectable";
import roleApiInjectable from "./role.api.injectable";
@@ -47,8 +46,3 @@ export const networkPolicyApi = asLegacyGlobalForExtensionApi(networkPolicyApiIn
* @deprecated use `di.inject(nodeApiInjectable)` instead
*/
export const nodeApi = asLegacyGlobalForExtensionApi(nodeApiInjectable);
-
-/**
- * @deprecated use `di.inject(persistentVolumeClaimApiInjectable)` instead
- */
-export const persistentVolumeClaimApi = asLegacyGlobalForExtensionApi(persistentVolumeClaimApiInjectable);
diff --git a/src/renderer/components/+workloads-pods/details/volumes/variants/persistent-volume-claim.tsx b/src/renderer/components/+workloads-pods/details/volumes/variants/persistent-volume-claim.tsx
index 641442d0ac..bbf786c5b9 100644
--- a/src/renderer/components/+workloads-pods/details/volumes/variants/persistent-volume-claim.tsx
+++ b/src/renderer/components/+workloads-pods/details/volumes/variants/persistent-volume-claim.tsx
@@ -3,18 +3,36 @@
* Licensed under MIT License. See LICENSE in root directory for more information.
*/
+import { withInjectables } from "@ogre-tools/injectable-react";
import React from "react";
-import { persistentVolumeClaimApi } from "../../../../../../common/k8s-api/endpoints";
-import type { VolumeVariantComponent } from "../variant-helpers";
+import type { PersistentVolumeClaimApi } from "../../../../../../common/k8s-api/endpoints";
+import persistentVolumeClaimApiInjectable from "../../../../../../common/k8s-api/endpoints/persistent-volume-claim.api.injectable";
+import type { PodVolumeVariantSpecificProps } from "../variant-helpers";
import { LocalRef } from "../variant-helpers";
-export const PersistentVolumeClaim: VolumeVariantComponent<"persistentVolumeClaim"> = (
- ({ pod, variant: { claimName }}) => (
+interface Dependencies {
+ persistentVolumeClaimApi: PersistentVolumeClaimApi;
+}
+
+const NonInjectedPersistentVolumeClaim = (props: PodVolumeVariantSpecificProps<"persistentVolumeClaim"> & Dependencies) => {
+ const {
+ pod,
+ variant: { claimName },
+ persistentVolumeClaimApi,
+ } = props;
+
+ return (
- )
-);
+ api={persistentVolumeClaimApi} />
+ );
+};
+
+export const PersistentVolumeClaim = withInjectables>(NonInjectedPersistentVolumeClaim, {
+ getProps: (di, props) => ({
+ ...props,
+ persistentVolumeClaimApi: di.inject(persistentVolumeClaimApiInjectable),
+ }),
+});