mirror of
https://github.com/lensapp/lens.git
synced 2025-05-20 05:10:56 +00:00
fix
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
This commit is contained in:
parent
fcff83b65f
commit
727fb6bb26
@ -30,6 +30,20 @@ export class EntitySettingRegistry extends BaseRegistry<EntitySettingRegistratio
|
||||
...item,
|
||||
};
|
||||
}
|
||||
|
||||
getItemsForKind(kind: string, apiVersion: string, source?: string) {
|
||||
const items = this.getItems().filter((item) => {
|
||||
return item.kind === kind && item.apiVersions.includes(apiVersion);
|
||||
});
|
||||
|
||||
if (source && source !== "") {
|
||||
return items.filter((item) => {
|
||||
return !item.source || item.source === source;
|
||||
});
|
||||
} else {
|
||||
return items;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
export const entitySettingRegistry = new EntitySettingRegistry();
|
||||
|
||||
@ -28,13 +28,16 @@ export class EntitySettings extends React.Component<Props> {
|
||||
return catalogEntityRegistry.getById(this.entityId);
|
||||
}
|
||||
|
||||
get menuItems() {
|
||||
if (!this.entity) return [];
|
||||
|
||||
return entitySettingRegistry.getItemsForKind(this.entity.kind, this.entity.apiVersion, this.entity.metadata.source);
|
||||
}
|
||||
|
||||
async componentDidMount() {
|
||||
const { hash } = navigation.location;
|
||||
|
||||
console.log(this.entityId, this.entity);
|
||||
|
||||
|
||||
this.activeTab = entitySettingRegistry.getItems()[0]?.id;
|
||||
this.activeTab = this.menuItems[0]?.id;
|
||||
|
||||
document.getElementById(hash.slice(1))?.scrollIntoView();
|
||||
}
|
||||
@ -44,14 +47,12 @@ export class EntitySettings extends React.Component<Props> {
|
||||
};
|
||||
|
||||
renderNavigation() {
|
||||
const settings = entitySettingRegistry.getItems();
|
||||
|
||||
return (
|
||||
<>
|
||||
<h2>{this.entity.metadata.name}</h2>
|
||||
<Tabs className="flex column" scrollable={false} onChange={this.onTabChange} value={this.activeTab}>
|
||||
<div className="header">Settings</div>
|
||||
{ settings.map((setting) => {
|
||||
{ this.menuItems.map((setting) => {
|
||||
return <Tab key={setting.id} value={setting.id} label={setting.title} data-testid={`${setting.id}-tab`} />;
|
||||
})}
|
||||
</Tabs>
|
||||
@ -62,7 +63,7 @@ export class EntitySettings extends React.Component<Props> {
|
||||
render() {
|
||||
if (!this.entity) return null;
|
||||
|
||||
const activeSetting = entitySettingRegistry.getItems().find((setting) => setting.id === this.activeTab);
|
||||
const activeSetting = this.menuItems.find((setting) => setting.id === this.activeTab);
|
||||
|
||||
if (!activeSetting) {
|
||||
return null;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user