import styled from 'styled-components'; import * as React from 'react'; import { ApiOutlined, BarChartOutlined, BookOutlined, SettingOutlined, FolderOutlined, SolutionOutlined, DownOutlined, } from '@ant-design/icons'; import { Link } from 'react-router-dom'; import { Button, Dropdown, Menu } from 'antd'; import { useAppConfig } from '../../useAppConfig'; import { useGetAuthenticatedUser } from '../../useGetAuthenticatedUser'; const LinkWrapper = styled.span` margin-right: 0px; `; const LinksWrapper = styled.div<{ areLinksHidden?: boolean }>` opacity: 1; white-space: nowrap; transition: opacity 0.5s; ${(props) => props.areLinksHidden && ` opacity: 0; width: 0; `} `; const MenuItem = styled(Menu.Item)` font-size: 12px; font-weight: bold; `; interface Props { areLinksHidden?: boolean; } export function HeaderLinks(props: Props) { const { areLinksHidden } = props; const me = useGetAuthenticatedUser(); const { config } = useAppConfig(); const isAnalyticsEnabled = config?.analyticsConfig.enabled; const isIngestionEnabled = config?.managedIngestionConfig.enabled; const showAnalytics = (isAnalyticsEnabled && me && me.platformPrivileges.viewAnalytics) || false; const showSettings = true; const showIngestion = isIngestionEnabled && me && me.platformPrivileges.manageIngestion && me.platformPrivileges.manageSecrets; return ( {showAnalytics && ( )} {showIngestion && ( )} Glossary Domains } > {showSettings && ( )} ); }