mirror of
https://github.com/lensapp/lens.git
synced 2025-05-20 05:10:56 +00:00
* Removing @observer decorator from <App/> Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com> * Add observer wrapper to <MainLayoutHeader/> Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com> * Fix eslint claim Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com> * Moving extension route renderers to components Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com> * Clean up Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com> * Removing external observables out from App render() Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com> * Fetching hosted cluster inside Command Palette Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com> * Setting route lists explicitly To avoid using observable data within tabRoutes arrays Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com> * Review fixes Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
34 lines
925 B
TypeScript
34 lines
925 B
TypeScript
import { observer } from "mobx-react";
|
|
import React from "react";
|
|
|
|
import { clusterSettingsURL } from "../+cluster-settings";
|
|
import { broadcastMessage } from "../../../common/ipc";
|
|
import { Cluster } from "../../../main/cluster";
|
|
import { cssNames } from "../../utils";
|
|
import { Icon } from "../icon";
|
|
|
|
interface Props {
|
|
cluster: Cluster
|
|
className?: string
|
|
}
|
|
|
|
export const MainLayoutHeader = observer(({ cluster, className }: Props) => {
|
|
return (
|
|
<header className={cssNames("flex gaps align-center justify-space-between", className)}>
|
|
<span className="cluster">{cluster.name}</span>
|
|
<Icon
|
|
material="settings"
|
|
tooltip="Open cluster settings"
|
|
interactive
|
|
onClick={() => {
|
|
broadcastMessage("renderer:navigate", clusterSettingsURL({
|
|
params: {
|
|
clusterId: cluster.id
|
|
}
|
|
}));
|
|
}}
|
|
/>
|
|
</header>
|
|
);
|
|
});
|