From f7c263490bc6fcd4101db3e0c341c262af628b8e Mon Sep 17 00:00:00 2001 From: Jari Kolehmainen Date: Fri, 16 Apr 2021 08:02:53 +0300 Subject: [PATCH] review changes Signed-off-by: Jari Kolehmainen --- .../catalog-entities/kubernetes-cluster.ts | 4 +-- src/common/catalog-entity-registry.ts | 4 --- .../registries/entity-setting-registry.ts | 4 +-- .../+entity-settings/entity-settings.tsx | 29 +++++++++++++------ .../cluster-settings/cluster-settings.tsx | 21 ++++++++++---- .../components/layout/page-layout.scss | 1 - 6 files changed, 40 insertions(+), 23 deletions(-) diff --git a/src/common/catalog-entities/kubernetes-cluster.ts b/src/common/catalog-entities/kubernetes-cluster.ts index 63bf4bc782..55f9d38feb 100644 --- a/src/common/catalog-entities/kubernetes-cluster.ts +++ b/src/common/catalog-entities/kubernetes-cluster.ts @@ -49,8 +49,8 @@ export class KubernetesCluster implements CatalogEntity { { icon: "settings", title: "Settings", - onClick: async () => context.navigate(`/entity/${this.metadata.uid}/settings`), - onlyVisibleForSource: "local" + onlyVisibleForSource: "local", + onClick: async () => context.navigate(`/entity/${this.metadata.uid}/settings`) }, { icon: "delete", diff --git a/src/common/catalog-entity-registry.ts b/src/common/catalog-entity-registry.ts index d42913c92f..28afa55bac 100644 --- a/src/common/catalog-entity-registry.ts +++ b/src/common/catalog-entity-registry.ts @@ -16,10 +16,6 @@ export class CatalogEntityRegistry { return Array.from(this.sources.values()).flat(); } - getById(id: string) { - return this.items.find((entity) => entity.metadata.uid === id); - } - getItemsForApiKind(apiVersion: string, kind: string): T[] { const items = this.items.filter((item) => item.apiVersion === apiVersion && item.kind === kind); diff --git a/src/extensions/registries/entity-setting-registry.ts b/src/extensions/registries/entity-setting-registry.ts index 96e0200390..8dd5ce6f25 100644 --- a/src/extensions/registries/entity-setting-registry.ts +++ b/src/extensions/registries/entity-setting-registry.ts @@ -26,7 +26,7 @@ export interface RegisteredEntitySetting extends EntitySettingRegistration { export class EntitySettingRegistry extends BaseRegistry { getRegisteredItem(item: EntitySettingRegistration): RegisteredEntitySetting { return { - id: item.id || item.title.toLowerCase().replace(/[^0-9a-zA-Z]+/g, "-"), + id: item.id || item.title.toLowerCase(), ...item, }; } @@ -36,7 +36,7 @@ export class EntitySettingRegistry extends BaseRegistry { return !item.source || item.source === source; }); diff --git a/src/renderer/components/+entity-settings/entity-settings.tsx b/src/renderer/components/+entity-settings/entity-settings.tsx index 7a31eb6ce2..ef21e2b3ad 100644 --- a/src/renderer/components/+entity-settings/entity-settings.tsx +++ b/src/renderer/components/+entity-settings/entity-settings.tsx @@ -12,7 +12,6 @@ import { catalogEntityRegistry } from "../../api/catalog-entity-registry"; import { entitySettingRegistry } from "../../../extensions/registries"; import { EntitySettingsRouteParams } from "./entity-settings.route"; - interface Props extends RouteComponentProps { } @@ -37,7 +36,7 @@ export class EntitySettings extends React.Component { async componentDidMount() { const { hash } = navigation.location; - this.activeTab = this.menuItems[0]?.id; + this.ensureActiveTab(); document.getElementById(hash.slice(1))?.scrollIntoView(); } @@ -52,23 +51,35 @@ export class EntitySettings extends React.Component {

{this.entity.metadata.name}

Settings
- { this.menuItems.map((setting) => { - return ; - })} + { this.menuItems.map((setting) => ( + + ))}
); } + ensureActiveTab() { + if (!this.activeTab) { + this.activeTab = this.menuItems[0]?.id; + } + } + render() { - if (!this.entity) return null; + if (!this.entity) { + console.error("entity not found", this.entityId); - const activeSetting = this.menuItems.find((setting) => setting.id === this.activeTab); - - if (!activeSetting) { return null; } + this.ensureActiveTab(); + const activeSetting = this.menuItems.find((setting) => setting.id === this.activeTab); + return ( { - const cluster = clusterStore.enabledClustersList.find((cluster) => cluster.id === props.entity.metadata.uid); + const cluster = getClusterForEntity(props.entity); if (!cluster) { return null; @@ -44,7 +55,7 @@ entitySettingRegistry.add([ title: "Proxy", components: { View: (props: { entity: CatalogEntity }) => { - const cluster = clusterStore.enabledClustersList.find((cluster) => cluster.id === props.entity.metadata.uid); + const cluster = getClusterForEntity(props.entity); if (!cluster) { return null; @@ -64,7 +75,7 @@ entitySettingRegistry.add([ title: "Terminal", components: { View: (props: { entity: CatalogEntity }) => { - const cluster = clusterStore.enabledClustersList.find((cluster) => cluster.id === props.entity.metadata.uid); + const cluster = getClusterForEntity(props.entity); if (!cluster) { return null; @@ -84,7 +95,7 @@ entitySettingRegistry.add([ title: "Namespaces", components: { View: (props: { entity: CatalogEntity }) => { - const cluster = clusterStore.enabledClustersList.find((cluster) => cluster.id === props.entity.metadata.uid); + const cluster = getClusterForEntity(props.entity); if (!cluster) { return null; @@ -105,7 +116,7 @@ entitySettingRegistry.add([ title: "Metrics", components: { View: (props: { entity: CatalogEntity }) => { - const cluster = clusterStore.enabledClustersList.find((cluster) => cluster.id === props.entity.metadata.uid); + const cluster = getClusterForEntity(props.entity); if (!cluster) { return null; diff --git a/src/renderer/components/layout/page-layout.scss b/src/renderer/components/layout/page-layout.scss index d598197871..6da6f73048 100644 --- a/src/renderer/components/layout/page-layout.scss +++ b/src/renderer/components/layout/page-layout.scss @@ -48,7 +48,6 @@ padding: 6px 10px; overflow-wrap: anywhere; color: var(--textColorAccent); - text-transform: uppercase; font-weight: 600; }