import { css } from '@emotion/css'; import React from 'react'; import { connect } from 'react-redux'; import { GrafanaTheme2, NavModel } from '@grafana/data'; import { LinkButton, useStyles2 } from '@grafana/ui'; import { Page } from 'app/core/components/Page/Page'; import { getNavModel } from '../../core/selectors/navModel'; import { StoreState } from '../../types'; import { LicenseChrome } from './LicenseChrome'; import { ServerStats } from './ServerStats'; interface Props { navModel: NavModel; } export function UpgradePage({ navModel }: Props) { return ( ); } const titleStyles = { fontWeight: 500, fontSize: '26px', lineHeight: '123%' }; interface UpgradeInfoProps { editionNotice?: string; } export const UpgradeInfo = ({ editionNotice }: UpgradeInfoProps) => { const styles = useStyles2(getStyles); return ( <>

Enterprise license

); }; const getStyles = (theme: GrafanaTheme2) => { return { column: css` display: grid; grid-template-columns: 100%; column-gap: 20px; row-gap: 40px; @media (min-width: 1050px) { grid-template-columns: 50% 50%; } `, title: css` margin: ${theme.spacing(4)} 0; `, }; }; const GetEnterprise = () => { return (

Get Grafana Enterprise

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

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

At your service

24 x 7 x 365 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 = () => { return (

Enhanced functionality

); }; const FeatureListing = () => { return ( LDAP, GitHub OAuth, Auth Proxy, Okta ); }; interface ListProps { nested?: boolean; } const List = ({ children, nested }: React.PropsWithChildren) => { 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 = ({ children, title, image }: React.PropsWithChildren) => { 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 connect(mapStateToProps)(UpgradePage);