diff --git a/packages/core/src/common/front-end-routing/routes/cluster/config/mutating-webhook-configurations/mutating-webhook-configurations-route.injectable.ts b/packages/core/src/common/front-end-routing/routes/cluster/config/mutating-webhook-configurations/mutating-webhook-configurations-route.injectable.ts new file mode 100644 index 0000000000..5812f1258d --- /dev/null +++ b/packages/core/src/common/front-end-routing/routes/cluster/config/mutating-webhook-configurations/mutating-webhook-configurations-route.injectable.ts @@ -0,0 +1,26 @@ +/** + * Copyright (c) OpenLens Authors. All rights reserved. + * Licensed under MIT License. See LICENSE in root directory for more information. + */ +import { + shouldShowResourceInjectionToken, +} from "../../../../../../features/cluster/showing-kube-resources/common/allowed-resources-injection-token"; +import { frontEndRouteInjectionToken } from "../../../../front-end-route-injection-token"; +import { getInjectable } from "@ogre-tools/injectable"; + +const mutatingWebhookConfigurationsRouteInjectable = getInjectable({ + id: "mutatingwebhookconfigurations", + + instantiate: (di) => ({ + path: "/mutatingwebhookconfigurations", + clusterFrame: true, + isEnabled: di.inject(shouldShowResourceInjectionToken, { + apiName: "mutatingwebhookconfigurations", + group: "admissionregistration.k8s.io", + }), + }), + + injectionToken: frontEndRouteInjectionToken, +}); + +export default mutatingWebhookConfigurationsRouteInjectable; diff --git a/packages/core/src/common/front-end-routing/routes/cluster/config/mutating-webhook-configurations/navigate-to-mutating-webhook-configurations.injectable.ts b/packages/core/src/common/front-end-routing/routes/cluster/config/mutating-webhook-configurations/navigate-to-mutating-webhook-configurations.injectable.ts new file mode 100644 index 0000000000..ffb0e4b3d0 --- /dev/null +++ b/packages/core/src/common/front-end-routing/routes/cluster/config/mutating-webhook-configurations/navigate-to-mutating-webhook-configurations.injectable.ts @@ -0,0 +1,20 @@ +/** + * 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 mutatingWebhookConfigurationsRouteInjectable from "./mutating-webhook-configurations-route.injectable"; +import { navigateToRouteInjectionToken } from "../../../../navigate-to-route-injection-token"; + +const navigateToMutatingWebhookConfigurationsInjectable = getInjectable({ + id: "navigate-to-mutating-webhook-configurations", + + instantiate: (di) => { + const navigateToRoute = di.inject(navigateToRouteInjectionToken); + const route = di.inject(mutatingWebhookConfigurationsRouteInjectable); + + return () => navigateToRoute(route); + }, +}); + +export default navigateToMutatingWebhookConfigurationsInjectable;