|
|
|
@ -1,6 +1,8 @@ |
|
|
|
|
// Libraries
|
|
|
|
|
import React, { Component } from 'react'; |
|
|
|
|
import config from 'app/core/config'; |
|
|
|
|
import { NavModel } from 'app/types'; |
|
|
|
|
import { getTitleFromNavModel } from 'app/core/selectors/navModel'; |
|
|
|
|
|
|
|
|
|
// Components
|
|
|
|
|
import PageHeader from '../PageHeader/PageHeader'; |
|
|
|
@ -11,6 +13,7 @@ import { CustomScrollbar } from '@grafana/ui'; |
|
|
|
|
interface Props { |
|
|
|
|
title?: string; |
|
|
|
|
children: JSX.Element[] | JSX.Element; |
|
|
|
|
navModel: NavModel; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
class Page extends Component<Props> { |
|
|
|
@ -35,26 +38,36 @@ class Page extends Component<Props> { |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
updateTitle = () => { |
|
|
|
|
const { title } = this.props; |
|
|
|
|
const title = this.getPageTitle; |
|
|
|
|
document.title = title ? title + ' - Grafana' : 'Grafana'; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
get getPageTitle () { |
|
|
|
|
const { navModel } = this.props; |
|
|
|
|
if (navModel) { |
|
|
|
|
return getTitleFromNavModel(navModel) || undefined; |
|
|
|
|
} |
|
|
|
|
return undefined; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
render() { |
|
|
|
|
const { navModel } = this.props; |
|
|
|
|
const { buildInfo } = config; |
|
|
|
|
return ( |
|
|
|
|
<div className="page-scrollbar-wrapper"> |
|
|
|
|
<CustomScrollbar autoHeightMin={'100%'}> |
|
|
|
|
<div className="page-scrollbar-content"> |
|
|
|
|
{this.props.children} |
|
|
|
|
<Footer |
|
|
|
|
appName="Grafana" |
|
|
|
|
buildCommit={buildInfo.commit} |
|
|
|
|
buildVersion={buildInfo.version} |
|
|
|
|
newGrafanaVersion={buildInfo.latestVersion} |
|
|
|
|
newGrafanaVersionExists={buildInfo.hasUpdate} /> |
|
|
|
|
</div> |
|
|
|
|
</CustomScrollbar> |
|
|
|
|
</div> |
|
|
|
|
<div className="page-scrollbar-wrapper"> |
|
|
|
|
<CustomScrollbar autoHeightMin={'100%'}> |
|
|
|
|
<div className="page-scrollbar-content"> |
|
|
|
|
<PageHeader model={navModel} /> |
|
|
|
|
{this.props.children} |
|
|
|
|
<Footer |
|
|
|
|
appName="Grafana" |
|
|
|
|
buildCommit={buildInfo.commit} |
|
|
|
|
buildVersion={buildInfo.version} |
|
|
|
|
newGrafanaVersion={buildInfo.latestVersion} |
|
|
|
|
newGrafanaVersionExists={buildInfo.hasUpdate} /> |
|
|
|
|
</div> |
|
|
|
|
</CustomScrollbar> |
|
|
|
|
</div> |
|
|
|
|
); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|