1
0
mirror of https://github.com/lensapp/lens.git synced 2025-05-20 05:10:56 +00:00
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
This commit is contained in:
Jari Kolehmainen 2020-11-13 14:53:39 +02:00
parent 334fd06ae7
commit 7077dba9f3
3 changed files with 19 additions and 7 deletions

View File

@ -2,10 +2,10 @@ import { LensMainExtension } from "@k8slens/extensions";
export default class ExampleExtensionMain extends LensMainExtension {
onActivate() {
console.log('EXAMPLE EXTENSION MAIN: ACTIVATED', this.getMeta());
console.log('EXAMPLE EXTENSION MAIN: ACTIVATED');
}
onDeactivate() {
console.log('EXAMPLE EXTENSION MAIN: DEACTIVATED', this.getMeta());
console.log('EXAMPLE EXTENSION MAIN: DEACTIVATED');
}
}

View File

@ -5,11 +5,21 @@ import React from "react"
export default class ExampleExtension extends LensRendererExtension {
clusterPages = [
{
path: "/extension-example",
id: "example",
routePath: "/extension-example",
title: "Example Extension",
components: {
Page: () => <ExamplePage extension={this}/>,
MenuIcon: ExampleIcon,
}
}
]
clusterPageMenus = [
{
target: { pageId: "example", params: {} },
title: "Example Extension",
components: {
Icon: ExampleIcon,
}
}
]

View File

@ -9,8 +9,8 @@ import { PageRegistration } from "../interfaces";
export interface PageMenuTarget {
pageId: string;
extensionId: string;
params: object;
extensionId?: string;
params?: object;
}
export interface PageMenuRegistration {
@ -33,7 +33,9 @@ export class PageMenuRegistry<T extends PageMenuRegistration> extends BaseRegist
@action
add(items: T[], ext?: LensExtension) {
const normalizedItems = items.map((i) => {
i.target.extensionId = ext.name
if (!i.target.extensionId) {
i.target.extensionId = ext.name
}
return i
})
return super.add(normalizedItems);