import React from 'react'; import { css } from 'emotion'; import { NavModel } from '@grafana/data'; import Page from '../../core/components/Page/Page'; import { LicenseChrome } from './LicenseChrome'; import { LinkButton } from '@grafana/ui'; import { hot } from 'react-hot-loader'; import { StoreState } from '../../types'; import { getNavModel } from '../../core/selectors/navModel'; import { connect } from 'react-redux'; interface Props { navModel: NavModel; } export const UpgradePage: React.FC = ({ navModel }) => { return ( ); }; const titleStyles = { fontWeight: 500, fontSize: '26px', lineHeight: '123%' }; interface UpgradeInfoProps { editionNotice?: string; } export const UpgradeInfo: React.FC = ({ editionNotice }) => { const columnStyles = css` display: grid; grid-template-columns: 100%; column-gap: 20px; row-gap: 40px; @media (min-width: 1050px) { grid-template-columns: 50% 50%; } `; return (
); }; const GetEnterprise: React.FC = () => { return (

Get Grafana Enterprise

You can use the trial version for free for 30 days. We will remind you about it{' '} 5 days before the trial period ends.

); }; const CallToAction: React.FC = () => { return ( Contact us and get a free trial ); }; const ServiceInfo: React.FC = () => { return (

At your service

24x7x365 support via in the upgrade process
Also included:
Indemnification, working with Grafana Labs on future prioritization, and training from the core Grafana team.
); }; const FeatureInfo: React.FC = () => { return (

Enhanced Functionality

); }; const FeatureListing: React.FC = () => { return ( LDAP, GitHub OAuth, Auth Proxy, Okta ); }; interface ListProps { nested?: boolean; } const List: React.FC = ({ children, nested }) => { const listStyle = css` display: flex; flex-direction: column; padding-top: 8px; > div { margin-bottom: ${nested ? 0 : 8}px; } `; return
{children}
; }; interface ItemProps { title: string; image?: string; } const Item: React.FC = ({ children, title, image }) => { const imageUrl = image ? image : 'public/img/licensing/checkmark.svg'; const itemStyle = css` display: flex; > img { display: block; height: 22px; flex-grow: 0; padding-right: 12px; } `; const titleStyle = css` font-weight: 500; line-height: 1.7; `; return (
{title}
{children}
); }; const mapStateToProps = (state: StoreState) => ({ navModel: getNavModel(state.navIndex, 'upgrading'), }); export default hot(module)(connect(mapStateToProps)(UpgradePage));