import {HeaderBreadcrumbs} from './HeaderBreadcrumbs'; import {HeaderLeftControls} from './HeaderLeftControls'; import {HeaderRightControls} from './HeaderRightControls'; import {PDiskLeftControls} from './PDiskLeftControls'; import {StorageGroupLeftControls} from './StorageGroupLeftControls'; import {VDiskLeftControls} from './VDiskLeftControls'; import {b} from './constants'; import {useHeaderBreadcrumbs} from './hooks/useHeaderBreadcrumbs'; import {useHeaderData} from './hooks/useHeaderData'; import {useHeaderPageContext} from './hooks/useHeaderPageContext'; import './Header.scss'; export function Header() { const { metaCapabilitiesLoaded, page, pageBreadcrumbsOptions, singleClusterMode, isViewerUser, databasesPageAvailable, isV2NavigationEnabled, savedHomePageTab, savedDatabasesEnvironment, homePageTabFromPath, database, clusterName, isDatabasePage, isClusterPage, isHomePage, isDatabasesHomePage, isClustersHomePage, } = useHeaderPageContext(); const { clusterTitle, isAddClusterAvailable, handleEditCluster, handleDeleteCluster, databaseData, isDatabaseDataLoading, clusterLinks, databaseLinks, prepareTenantBackend, } = useHeaderData({ metaCapabilitiesLoaded, database, clusterName, isDatabasePage, isClustersHomePage, }); const breadcrumbItems = useHeaderBreadcrumbs({ page, pageBreadcrumbsOptions, singleClusterMode, isViewerUser, isV2NavigationEnabled, homePageTabFromPath, savedHomePageTab, savedDatabasesEnvironment, databasesPageAvailable, clusterTitle, isClustersHomePage, isDatabasesHomePage, }); if (!metaCapabilitiesLoaded) { return null; } const renderLeftControls = () => { if (page === 'storageGroup') { return ; } if (page === 'vDisk') { return ; } if (page === 'pDisk') { return ; } return database && isDatabasePage && isV2NavigationEnabled ? ( ) : null; }; return (
); }