diff --git a/packages/core/src/common/k8s-api/endpoints/metrics.api/request-prometheus-details.injectable.ts b/packages/core/src/common/k8s-api/endpoints/metrics.api/request-prometheus-details.injectable.ts deleted file mode 100644 index 3945d4971f..0000000000 --- a/packages/core/src/common/k8s-api/endpoints/metrics.api/request-prometheus-details.injectable.ts +++ /dev/null @@ -1,21 +0,0 @@ -/** - * 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 apiBaseInjectable from "../../api-base.injectable"; -import type { PrometheusDetails } from "../../../../main/cluster/prometheus-handler/prometheus-handler"; - -export type RequestPrometheusDetails = () => Promise; - -const requestPrometheusDetailsInjectable = getInjectable({ - id: "request-prometheus-details", - instantiate: (di): RequestPrometheusDetails => { - const apiBase = di.inject(apiBaseInjectable); - - return () => apiBase.get("/prometheus/details"); - }, -}); - -export default requestPrometheusDetailsInjectable; diff --git a/packages/core/src/renderer/components/cluster-settings/no-prometheus-provider-detectec.tsx b/packages/core/src/renderer/components/cluster-settings/no-prometheus-provider-detectec.tsx new file mode 100644 index 0000000000..55fd5fac09 --- /dev/null +++ b/packages/core/src/renderer/components/cluster-settings/no-prometheus-provider-detectec.tsx @@ -0,0 +1,18 @@ +/** + * Copyright (c) OpenLens Authors. All rights reserved. + * Licensed under MIT License. See LICENSE in root directory for more information. + */ +import React from "react"; +import { SubTitle } from "../layout/sub-title"; +import { Icon } from "../icon"; + + +export const NoPrometheusProviderDetected = () => ( +
+ +
+ +
Could not detect any Prometheus provider.
+
+
+); diff --git a/packages/core/src/renderer/components/cluster-settings/prometheus-details.tsx b/packages/core/src/renderer/components/cluster-settings/prometheus-details.tsx index 100d1bbf0d..7a67b97a0f 100644 --- a/packages/core/src/renderer/components/cluster-settings/prometheus-details.tsx +++ b/packages/core/src/renderer/components/cluster-settings/prometheus-details.tsx @@ -16,18 +16,18 @@ interface PrometheusDetailsProps { } export const PrometheusDetails = ({ providerName, path }: PrometheusDetailsProps) => (
- -
+ +
- Prometheus provider name + Provider:
{providerName}
-
+
- Prometheus path + Path:
{path} diff --git a/packages/core/src/renderer/components/cluster-settings/prometheus-setting.tsx b/packages/core/src/renderer/components/cluster-settings/prometheus-setting.tsx index 6c769f030d..42ee088664 100644 --- a/packages/core/src/renderer/components/cluster-settings/prometheus-setting.tsx +++ b/packages/core/src/renderer/components/cluster-settings/prometheus-setting.tsx @@ -21,6 +21,7 @@ import type { PrometheusDetailsData } from "../../../common/k8s-api/endpoints/me import { loggerInjectionToken } from "@k8slens/logger"; import type { Logger } from "@k8slens/logger"; import { PrometheusDetails } from "./prometheus-details"; +import { NoPrometheusProviderDetected } from "./no-prometheus-provider-detectec"; export interface ClusterPrometheusSettingProps { cluster: Cluster; @@ -156,7 +157,7 @@ class NonInjectedClusterPrometheusSetting extends React.Component @@ -188,18 +189,21 @@ class NonInjectedClusterPrometheusSetting extends React.Component - {this.prometheusDetails?.details && this.prometheusDetails?.type === "success" /*&& this.selectedOption === autoDetectPrometheus */ && ( + {showPrometheusDetailsResult && ( <>
- + {this.prometheusDetails?.type === "success" && this.prometheusDetails.details && ( + + )} + {this.prometheusDetails?.type === "error" && ( + + )} )} - {this.prometheusDetails?.type === "error" && ( -
auto detection did not find a prometheus provider
- )} + {this.canEditPrometheusPath && ( <>