import React from "react"; import { observer } from "mobx-react"; import { Redirect, Route, Switch } from "react-router"; import { Trans } from "@lingui/macro"; import { MainLayout, TabRoute } from "../layout/main-layout"; import { ConfigMaps, configMapsRoute, configMapsURL } from "../+config-maps"; import { Secrets, secretsRoute, secretsURL } from "../+config-secrets"; import { namespaceStore } from "../+namespaces/namespace.store"; import { resourceQuotaRoute, ResourceQuotas, resourceQuotaURL } from "../+config-resource-quotas"; import { configURL } from "./config.route"; import { HorizontalPodAutoscalers, hpaRoute, hpaURL } from "../+config-autoscalers"; import { Certificates, ClusterIssuers, Issuers } from "../+custom-resources/certmanager.k8s.io"; import { buildURL } from "../../navigation"; export const certificatesURL = buildURL("/certificates"); export const issuersURL = buildURL("/issuers"); export const clusterIssuersURL = buildURL("/clusterissuers"); @observer export class Config extends React.Component { static get tabRoutes(): TabRoute[] { const query = namespaceStore.getContextParams() return [ { title: ConfigMaps, component: ConfigMaps, url: configMapsURL({ query }), path: configMapsRoute.path, }, { title: Secrets, component: Secrets, url: secretsURL({ query }), path: secretsRoute.path, }, { title: Resource Quotas, component: ResourceQuotas, url: resourceQuotaURL({ query }), path: resourceQuotaRoute.path, }, { title: Certificates, component: Certificates, url: certificatesURL({ query }), path: certificatesURL(), }, { title: Issuers, component: Issuers, url: issuersURL({ query }), path: issuersURL(), }, { title: Cluster Issuers, component: ClusterIssuers, url: clusterIssuersURL(), path: clusterIssuersURL(), }, { title: HPA, component: HorizontalPodAutoscalers, url: hpaURL({ query }), path: hpaRoute.path, }, ] } render() { const tabRoutes = Config.tabRoutes; return ( {tabRoutes.map((route, index) => )} ) } }