mirror of
https://github.com/lensapp/lens.git
synced 2025-05-20 05:10:56 +00:00
Remove unnecessary 'onlyVisibleForSource' (#2982)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
This commit is contained in:
parent
6044d08a74
commit
6677e22371
@ -101,20 +101,18 @@ export class KubernetesCluster extends CatalogEntity<CatalogEntityMetadata, Kube
|
|||||||
}
|
}
|
||||||
|
|
||||||
async onContextMenuOpen(context: CatalogEntityContextMenuContext) {
|
async onContextMenuOpen(context: CatalogEntityContextMenuContext) {
|
||||||
context.menuItems = [
|
if (!this.metadata.source || this.metadata.source === "local") {
|
||||||
{
|
context.menuItems.push({
|
||||||
title: "Settings",
|
title: "Settings",
|
||||||
icon: "edit",
|
icon: "edit",
|
||||||
onlyVisibleForSource: "local",
|
|
||||||
onClick: async () => context.navigate(`/entity/${this.metadata.uid}/settings`)
|
onClick: async () => context.navigate(`/entity/${this.metadata.uid}/settings`)
|
||||||
},
|
});
|
||||||
];
|
}
|
||||||
|
|
||||||
if (this.metadata.labels["file"]?.startsWith(ClusterStore.storedKubeConfigFolder)) {
|
if (this.metadata.labels["file"]?.startsWith(ClusterStore.storedKubeConfigFolder)) {
|
||||||
context.menuItems.push({
|
context.menuItems.push({
|
||||||
title: "Delete",
|
title: "Delete",
|
||||||
icon: "delete",
|
icon: "delete",
|
||||||
onlyVisibleForSource: "local",
|
|
||||||
onClick: async () => ClusterStore.getInstance().removeById(this.metadata.uid),
|
onClick: async () => ClusterStore.getInstance().removeById(this.metadata.uid),
|
||||||
confirm: {
|
confirm: {
|
||||||
message: `Remove Kubernetes Cluster "${this.metadata.name} from ${productName}?`
|
message: `Remove Kubernetes Cluster "${this.metadata.name} from ${productName}?`
|
||||||
|
|||||||
@ -104,10 +104,6 @@ export interface CatalogEntityContextMenu {
|
|||||||
* Menu icon
|
* Menu icon
|
||||||
*/
|
*/
|
||||||
icon?: string;
|
icon?: string;
|
||||||
/**
|
|
||||||
* Show only if empty or if value matches with entity.metadata.source
|
|
||||||
*/
|
|
||||||
onlyVisibleForSource?: string;
|
|
||||||
/**
|
/**
|
||||||
* OnClick handler
|
* OnClick handler
|
||||||
*/
|
*/
|
||||||
|
|||||||
@ -78,23 +78,24 @@ export class CatalogEntityDrawerMenu<T extends CatalogEntity> extends React.Comp
|
|||||||
return [];
|
return [];
|
||||||
}
|
}
|
||||||
|
|
||||||
const menuItems = this.contextMenu.menuItems.filter((menuItem) => {
|
const items: React.ReactChild[] = [];
|
||||||
return menuItem.icon && !menuItem.onlyVisibleForSource || menuItem.onlyVisibleForSource === entity.metadata.source;
|
|
||||||
});
|
|
||||||
|
|
||||||
const items = menuItems.map((menuItem, index) => {
|
for (const menuItem of this.contextMenu.menuItems) {
|
||||||
const props = menuItem.icon.includes("<svg") ? { svg: menuItem.icon } : { material: menuItem.icon };
|
if (!menuItem.icon) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
return (
|
const key = menuItem.icon.includes("<svg") ? "svg" : "material";
|
||||||
<MenuItem key={index} onClick={() => this.onMenuItemClick(menuItem)}>
|
|
||||||
|
items.push(
|
||||||
|
<MenuItem key={menuItem.title} onClick={() => this.onMenuItemClick(menuItem)}>
|
||||||
<Icon
|
<Icon
|
||||||
title={menuItem.title}
|
title={menuItem.title}
|
||||||
{...props}
|
{...{ [key]: menuItem.icon }}
|
||||||
/>
|
/>
|
||||||
</MenuItem>
|
</MenuItem>
|
||||||
);
|
);
|
||||||
|
}
|
||||||
});
|
|
||||||
|
|
||||||
items.unshift(
|
items.unshift(
|
||||||
<MenuItem key="add-to-hotbar" onClick={() => this.addToHotbar(entity) }>
|
<MenuItem key="add-to-hotbar" onClick={() => this.addToHotbar(entity) }>
|
||||||
|
|||||||
@ -171,12 +171,10 @@ export class Catalog extends React.Component<Props> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
renderItemMenu = (item: CatalogEntityItem) => {
|
renderItemMenu = (item: CatalogEntityItem) => {
|
||||||
const menuItems = this.contextMenu.menuItems.filter((menuItem) => !menuItem.onlyVisibleForSource || menuItem.onlyVisibleForSource === item.entity.metadata.source);
|
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<MenuActions onOpen={() => item.onContextMenuOpen(this.contextMenu)}>
|
<MenuActions onOpen={() => item.onContextMenuOpen(this.contextMenu)}>
|
||||||
{
|
{
|
||||||
menuItems.map((menuItem, index) => (
|
this.contextMenu.menuItems.map((menuItem, index) => (
|
||||||
<MenuItem key={index} onClick={() => this.onMenuItemClick(menuItem)}>
|
<MenuItem key={index} onClick={() => this.onMenuItemClick(menuItem)}>
|
||||||
{menuItem.title}
|
{menuItem.title}
|
||||||
</MenuItem>
|
</MenuItem>
|
||||||
|
|||||||
@ -106,7 +106,7 @@ export class HotbarEntityIcon extends React.Component<Props> {
|
|||||||
};
|
};
|
||||||
const isActive = this.isActive(entity);
|
const isActive = this.isActive(entity);
|
||||||
const isPersisted = this.isPersisted(entity);
|
const isPersisted = this.isPersisted(entity);
|
||||||
const menuItems = this.contextMenu?.menuItems.filter((menuItem) => !menuItem.onlyVisibleForSource || menuItem.onlyVisibleForSource === entity.metadata.source);
|
const menuItems = this.contextMenu?.menuItems ?? [];
|
||||||
|
|
||||||
if (!isPersisted) {
|
if (!isPersisted) {
|
||||||
menuItems.unshift({
|
menuItems.unshift({
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user