Get rid of this.disposers while registering stuff in extensions #1145

Signed-off-by: Roman <ixrock@gmail.com>
This commit is contained in:
Roman committed 2020-10-26 17:59:24 +02:00
1 parent e9ebd06664
commit cee4d1ea1f
16 files changed
+91 -82

No files matched your search

+10 -12
View File
@@ -1,6 +1,6 @@
import { Registry, LensRendererExtension } from "@k8slens/extensions";
import { PodShellMenu } from "./src/shell-menu"
import { PodLogsMenu } from "./src/logs-menu"
import { PodShellMenu, PodShellMenuProps } from "./src/shell-menu"
import { PodLogsMenu, PodLogsMenuProps } from "./src/logs-menu"
import React from "react"
export default class PodMenuRendererExtension extends LensRendererExtension {
@@ -9,23 +9,21 @@ export default class PodMenuRendererExtension extends LensRendererExtension {
}
registerKubeObjectMenus(registry: Registry.KubeObjectMenuRegistry) {
this.disposers.push(
registry.add({
return [
{
kind: "Pod",
apiVersions: ["v1"],
components: {
MenuItem: (props) => <PodShellMenu {...props} />
MenuItem: (props: PodShellMenuProps) => <PodShellMenu {...props} />
}
})
)
this.disposers.push(
registry.add({
},
{
kind: "Pod",
apiVersions: ["v1"],
components: {
MenuItem: (props) => <PodLogsMenu {...props} />
MenuItem: (props: PodLogsMenuProps) => <PodLogsMenu {...props} />
}
})
)
}
]
}
}
+2 -2
View File
@@ -1,10 +1,10 @@
import React from "react";
import { Component, K8sApi, Util, Navigation } from "@k8slens/extensions";
interface Props extends Component.KubeObjectMenuProps<K8sApi.Pod> {
export interface PodLogsMenuProps extends Component.KubeObjectMenuProps<K8sApi.Pod> {
}
export class PodLogsMenu extends React.Component<Props> {
export class PodLogsMenu extends React.Component<PodLogsMenuProps> {
showLogs(container: K8sApi.IPodContainer) {
Navigation.hideDetails();
const pod = this.props.object;
+2 -2
View File
@@ -3,10 +3,10 @@
import React from "react";
import { Component, K8sApi, Util, Navigation } from "@k8slens/extensions";
interface Props extends Component.KubeObjectMenuProps<K8sApi.Pod> {
export interface PodShellMenuProps extends Component.KubeObjectMenuProps<K8sApi.Pod> {
}
export class PodShellMenu extends React.Component<Props> {
export class PodShellMenu extends React.Component<PodShellMenuProps> {
async execShell(container?: string) {
Navigation.hideDetails();
const { object: pod } = this.props