mirror of
https://git.mirrors.martin98.com/https://github.com/SigNoz/signoz
synced 2025-07-30 18:52:01 +08:00

* fix: solved kafka feature feedbacks * fix: changed coming soon text to - join slack community
43 lines
1002 B
TypeScript
43 lines
1002 B
TypeScript
/* eslint-disable jsx-a11y/no-static-element-interactions */
|
|
/* eslint-disable jsx-a11y/click-events-have-key-events */
|
|
import './NavItem.styles.scss';
|
|
|
|
import { Tag } from 'antd';
|
|
import cx from 'classnames';
|
|
|
|
import { SidebarItem } from '../sideNav.types';
|
|
|
|
export default function NavItem({
|
|
item,
|
|
isActive,
|
|
onClick,
|
|
}: {
|
|
item: SidebarItem;
|
|
isActive: boolean;
|
|
onClick: (event: React.MouseEvent<HTMLDivElement, MouseEvent>) => void;
|
|
}): JSX.Element {
|
|
const { label, icon, isBeta } = item;
|
|
|
|
return (
|
|
<div
|
|
className={cx('nav-item', isActive ? 'active' : '')}
|
|
onClick={(event): void => onClick(event)}
|
|
>
|
|
<div className="nav-item-active-marker" />
|
|
<div className={cx('nav-item-data', isBeta ? 'beta-tag' : '')}>
|
|
<div className="nav-item-icon">{icon}</div>
|
|
|
|
<div className="nav-item-label">{label}</div>
|
|
|
|
{isBeta && (
|
|
<div className="nav-item-beta">
|
|
<Tag bordered={false} color="geekblue">
|
|
Beta
|
|
</Tag>
|
|
</div>
|
|
)}
|
|
</div>
|
|
</div>
|
|
);
|
|
}
|