
* move react-app to its own folder inside project * move backend to kafka-ui repo * setup react inside netty * make application ready in 2 commands * update readme * update readme * update readme * update readme * update profiles for application start inside (sdp profile) and outside docker (local profile) * broker metrics endpoint * topics endpoint start commit * topics details endpoint start commit // dependencies and versions fix * small pom updates // continue review fixes * fix review issues // save errors // save connections and update connection logic // save jmx, zookeeper, kafka statuses // error with getting one topic doesn't fail others // async metrics processing // cluster data storage refactoring * properties version extracting * properties versions * topic details * remove jmx, topic details, topic configs * create topic * final fixes, topic creation * topic creation ui fixes * add check for cases when cluster is offline
38 lines
964 B
TypeScript
38 lines
964 B
TypeScript
import React from 'react';
|
|
import { Cluster } from 'redux/interfaces';
|
|
import { NavLink } from 'react-router-dom';
|
|
import cx from 'classnames';
|
|
import ClusterMenu from './ClusterMenu';
|
|
|
|
interface Props {
|
|
isClusterListFetched: boolean,
|
|
clusters: Cluster[];
|
|
className?: string;
|
|
}
|
|
|
|
const Nav: React.FC<Props> = ({
|
|
isClusterListFetched,
|
|
clusters,
|
|
className,
|
|
}) => (
|
|
<aside className={cx('menu has-shadow has-background-white', className)}>
|
|
<p className="menu-label">
|
|
General
|
|
</p>
|
|
<ul className="menu-list">
|
|
<li>
|
|
<NavLink exact to="/" activeClassName="is-active" title="Dashboard">
|
|
Dashboard
|
|
</NavLink>
|
|
</li>
|
|
</ul>
|
|
<p className="menu-label">
|
|
Clusters
|
|
</p>
|
|
{!isClusterListFetched && <div className="loader" />}
|
|
|
|
{isClusterListFetched && clusters.map((cluster, index) => <ClusterMenu {...cluster} key={`cluster-list-item-key-${index}`}/>)}
|
|
</aside>
|
|
);
|
|
|
|
export default Nav;
|