|
|
|
|
@ -1,10 +1,9 @@ |
|
|
|
|
import React, { useState } from 'react'; |
|
|
|
|
import { Enable, Disable } from 'react-enable'; |
|
|
|
|
|
|
|
|
|
import { config } from '@grafana/runtime'; |
|
|
|
|
import { Tab, TabContent, TabsBar } from '@grafana/ui'; |
|
|
|
|
|
|
|
|
|
import { AlertingPageWrapper } from '../components/AlertingPageWrapper'; |
|
|
|
|
import { AlertingFeature } from '../features'; |
|
|
|
|
|
|
|
|
|
import GettingStarted, { WelcomeHeader } from './GettingStarted'; |
|
|
|
|
import Insights from './Insights'; |
|
|
|
|
@ -14,36 +13,38 @@ type HomeTabs = 'insights' | 'gettingStarted'; |
|
|
|
|
export default function Home() { |
|
|
|
|
const [activeTab, setActiveTab] = useState<HomeTabs>('insights'); |
|
|
|
|
|
|
|
|
|
const alertingInsightsEnabled = config.featureToggles.alertingInsights; |
|
|
|
|
return ( |
|
|
|
|
<AlertingPageWrapper pageId={'alerting'}> |
|
|
|
|
<Enable feature={AlertingFeature.InsightsPage}> |
|
|
|
|
<WelcomeHeader /> |
|
|
|
|
<TabsBar> |
|
|
|
|
<Tab |
|
|
|
|
key={'insights'} |
|
|
|
|
label={'Insights'} |
|
|
|
|
active={activeTab === 'insights'} |
|
|
|
|
onChangeTab={() => { |
|
|
|
|
setActiveTab('insights'); |
|
|
|
|
}} |
|
|
|
|
/> |
|
|
|
|
<Tab |
|
|
|
|
key={'gettingStarted'} |
|
|
|
|
label={'Overview'} |
|
|
|
|
active={activeTab === 'gettingStarted'} |
|
|
|
|
onChangeTab={() => { |
|
|
|
|
setActiveTab('gettingStarted'); |
|
|
|
|
}} |
|
|
|
|
/> |
|
|
|
|
</TabsBar> |
|
|
|
|
<TabContent> |
|
|
|
|
{activeTab === 'insights' && <Insights />} |
|
|
|
|
{activeTab === 'gettingStarted' && <GettingStarted />} |
|
|
|
|
</TabContent> |
|
|
|
|
</Enable> |
|
|
|
|
<Disable feature={AlertingFeature.InsightsPage}> |
|
|
|
|
<GettingStarted showWelcomeHeader={true} /> |
|
|
|
|
</Disable> |
|
|
|
|
{alertingInsightsEnabled && ( |
|
|
|
|
<> |
|
|
|
|
<WelcomeHeader /> |
|
|
|
|
<TabsBar> |
|
|
|
|
<Tab |
|
|
|
|
key={'insights'} |
|
|
|
|
label={'Insights'} |
|
|
|
|
active={activeTab === 'insights'} |
|
|
|
|
onChangeTab={() => { |
|
|
|
|
setActiveTab('insights'); |
|
|
|
|
}} |
|
|
|
|
/> |
|
|
|
|
<Tab |
|
|
|
|
key={'gettingStarted'} |
|
|
|
|
label={'Overview'} |
|
|
|
|
active={activeTab === 'gettingStarted'} |
|
|
|
|
onChangeTab={() => { |
|
|
|
|
setActiveTab('gettingStarted'); |
|
|
|
|
}} |
|
|
|
|
/> |
|
|
|
|
</TabsBar> |
|
|
|
|
<TabContent> |
|
|
|
|
{activeTab === 'insights' && <Insights />} |
|
|
|
|
{activeTab === 'gettingStarted' && <GettingStarted />} |
|
|
|
|
</TabContent> |
|
|
|
|
</> |
|
|
|
|
)} |
|
|
|
|
|
|
|
|
|
{!alertingInsightsEnabled && <GettingStarted showWelcomeHeader={true} />} |
|
|
|
|
</AlertingPageWrapper> |
|
|
|
|
); |
|
|
|
|
} |
|
|
|
|
|