mirror of
https://github.com/lensapp/lens.git
synced 2025-05-20 05:10:56 +00:00
fix!: Use correct typing for Metrics tokens
Signed-off-by: Sebastian Malton <sebastian@malton.name>
This commit is contained in:
parent
80458170ad
commit
8f8f77550f
@ -3,79 +3,4 @@
|
||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
||||
*/
|
||||
|
||||
import type React from "react";
|
||||
import { getInjectionToken } from "@ogre-tools/injectable";
|
||||
|
||||
export type ClusterOverviewUIBlock = {
|
||||
id: string;
|
||||
Component: React.ElementType;
|
||||
orderNumber: number;
|
||||
};
|
||||
|
||||
// this should be moved to cluster-overview package when there is one
|
||||
export const clusterOverviewUIBlockInjectionToken = getInjectionToken<ClusterOverviewUIBlock>({
|
||||
id: "cluster-overview-ui-block-injection-token",
|
||||
});
|
||||
|
||||
export type KubeObjectDetailMetricsComponentProps = {
|
||||
object: any;
|
||||
};
|
||||
|
||||
export type KubeObjectDetailMetrics = {
|
||||
id: string;
|
||||
Component: React.ComponentType<KubeObjectDetailMetricsComponentProps>;
|
||||
};
|
||||
|
||||
export const podDetailsMetricsInjectionToken = getInjectionToken<KubeObjectDetailMetrics>({
|
||||
id: "pod-details-metrics-injection-token",
|
||||
});
|
||||
|
||||
export const deploymentDetailsMetricsInjectionToken = getInjectionToken<KubeObjectDetailMetrics>({
|
||||
id: "deployment-details-metrics-injection-token",
|
||||
});
|
||||
|
||||
export const nodeDetailsMetricsInjectionToken = getInjectionToken<KubeObjectDetailMetrics>({
|
||||
id: "node-details-metrics-injection-token",
|
||||
});
|
||||
|
||||
export const replicaSetDetailsMetricsInjectionToken = getInjectionToken<KubeObjectDetailMetrics>({
|
||||
id: "replica-set-details-metrics-injection-token",
|
||||
});
|
||||
|
||||
export const persistentVolumeClaimDetailsMetricsInjectionToken = getInjectionToken<KubeObjectDetailMetrics>({
|
||||
id: "persistent-volume-claim-details-metrics-injection-token",
|
||||
});
|
||||
|
||||
export const statefulSetDetailsMetricsInjectionToken = getInjectionToken<KubeObjectDetailMetrics>({
|
||||
id: "stateful-set-details-metrics-injection-token",
|
||||
});
|
||||
|
||||
export const namespaceDetailsMetricsInjectionToken = getInjectionToken<KubeObjectDetailMetrics>({
|
||||
id: "namespace-details-metrics-injection-token",
|
||||
});
|
||||
|
||||
export const jobDetailsMetricsInjectionToken = getInjectionToken<KubeObjectDetailMetrics>({
|
||||
id: "job-details-metrics-injection-token",
|
||||
});
|
||||
|
||||
export const daemonSetDetailsMetricsInjectionToken = getInjectionToken<KubeObjectDetailMetrics>({
|
||||
id: "daemon-set-details-metrics-injection-token",
|
||||
});
|
||||
|
||||
export const ingressDetailsMetricsInjectionToken = getInjectionToken<KubeObjectDetailMetrics>({
|
||||
id: "ingress-details-metrics-injection-token",
|
||||
});
|
||||
|
||||
export interface PodDetailsContainerMetricsComponentProps {
|
||||
container: any;
|
||||
pod: any;
|
||||
}
|
||||
|
||||
export interface PodDetailsContainerMetricsComponent {
|
||||
id: string;
|
||||
Component: React.ComponentType<PodDetailsContainerMetricsComponentProps>;
|
||||
}
|
||||
|
||||
export const podDetailsContainerMetricsInjectionToken = getInjectionToken<PodDetailsContainerMetricsComponent>({
|
||||
id: "pod-details-container-metrics-injection-token",
|
||||
});
|
||||
export * from "./src/tokens";
|
||||
|
||||
@ -32,6 +32,7 @@
|
||||
"lint:fix": "lens-lint --fix"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@k8slens/kube-object": "^1.0.0-alpha.1",
|
||||
"@ogre-tools/injectable": "^15.1.2",
|
||||
"react": "^17.0.2"
|
||||
},
|
||||
|
||||
97
packages/metrics/src/tokens.ts
Normal file
97
packages/metrics/src/tokens.ts
Normal file
@ -0,0 +1,97 @@
|
||||
/**
|
||||
* Copyright (c) OpenLens Authors. All rights reserved.
|
||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
||||
*/
|
||||
|
||||
import type React from "react";
|
||||
import { getInjectionToken } from "@ogre-tools/injectable";
|
||||
import type {
|
||||
Container,
|
||||
DaemonSet,
|
||||
Deployment,
|
||||
Ingress,
|
||||
Job,
|
||||
KubeObject,
|
||||
Namespace,
|
||||
Node,
|
||||
PersistentVolumeClaim,
|
||||
Pod,
|
||||
ReplicaSet,
|
||||
StatefulSet,
|
||||
} from "@k8slens/kube-object";
|
||||
|
||||
export type ClusterOverviewUIBlock = {
|
||||
id: string;
|
||||
Component: React.ElementType;
|
||||
orderNumber: number;
|
||||
};
|
||||
|
||||
// this should be moved to cluster-overview package when there is one
|
||||
export const clusterOverviewUIBlockInjectionToken = getInjectionToken<ClusterOverviewUIBlock>({
|
||||
id: "cluster-overview-ui-block-injection-token",
|
||||
});
|
||||
|
||||
export type KubeObjectDetailMetricsComponentProps<K extends KubeObject> = {
|
||||
object: K;
|
||||
};
|
||||
|
||||
export type KubeObjectDetailMetrics<K extends KubeObject> = {
|
||||
id: string;
|
||||
Component: React.ComponentType<KubeObjectDetailMetricsComponentProps<K>>;
|
||||
};
|
||||
|
||||
export const podDetailsMetricsInjectionToken = getInjectionToken<KubeObjectDetailMetrics<Pod>>({
|
||||
id: "pod-details-metrics-injection-token",
|
||||
});
|
||||
|
||||
export const deploymentDetailsMetricsInjectionToken = getInjectionToken<KubeObjectDetailMetrics<Deployment>>({
|
||||
id: "deployment-details-metrics-injection-token",
|
||||
});
|
||||
|
||||
export const nodeDetailsMetricsInjectionToken = getInjectionToken<KubeObjectDetailMetrics<Node>>({
|
||||
id: "node-details-metrics-injection-token",
|
||||
});
|
||||
|
||||
export const replicaSetDetailsMetricsInjectionToken = getInjectionToken<KubeObjectDetailMetrics<ReplicaSet>>({
|
||||
id: "replica-set-details-metrics-injection-token",
|
||||
});
|
||||
|
||||
export const persistentVolumeClaimDetailsMetricsInjectionToken = getInjectionToken<
|
||||
KubeObjectDetailMetrics<PersistentVolumeClaim>
|
||||
>({
|
||||
id: "persistent-volume-claim-details-metrics-injection-token",
|
||||
});
|
||||
|
||||
export const statefulSetDetailsMetricsInjectionToken = getInjectionToken<KubeObjectDetailMetrics<StatefulSet>>({
|
||||
id: "stateful-set-details-metrics-injection-token",
|
||||
});
|
||||
|
||||
export const namespaceDetailsMetricsInjectionToken = getInjectionToken<KubeObjectDetailMetrics<Namespace>>({
|
||||
id: "namespace-details-metrics-injection-token",
|
||||
});
|
||||
|
||||
export const jobDetailsMetricsInjectionToken = getInjectionToken<KubeObjectDetailMetrics<Job>>({
|
||||
id: "job-details-metrics-injection-token",
|
||||
});
|
||||
|
||||
export const daemonSetDetailsMetricsInjectionToken = getInjectionToken<KubeObjectDetailMetrics<DaemonSet>>({
|
||||
id: "daemon-set-details-metrics-injection-token",
|
||||
});
|
||||
|
||||
export const ingressDetailsMetricsInjectionToken = getInjectionToken<KubeObjectDetailMetrics<Ingress>>({
|
||||
id: "ingress-details-metrics-injection-token",
|
||||
});
|
||||
|
||||
export interface PodDetailsContainerMetricsComponentProps {
|
||||
container: Container;
|
||||
pod: Pod;
|
||||
}
|
||||
|
||||
export interface PodDetailsContainerMetricsComponent {
|
||||
id: string;
|
||||
Component: React.ComponentType<PodDetailsContainerMetricsComponentProps>;
|
||||
}
|
||||
|
||||
export const podDetailsContainerMetricsInjectionToken = getInjectionToken<PodDetailsContainerMetricsComponent>({
|
||||
id: "pod-details-container-metrics-injection-token",
|
||||
});
|
||||
Loading…
Reference in New Issue
Block a user