// This file is part of MinIO Console Server // Copyright (c) 2020 MinIO, Inc. // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU Affero General Public License as published by // the Free Software Foundation, either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU Affero General Public License for more details. // // You should have received a copy of the GNU Affero General Public License // along with this program. If not, see . import React from "react"; import clsx from "clsx"; import Grid from "@material-ui/core/Grid"; import Paper from "@material-ui/core/Paper"; import Button from "@material-ui/core/Button"; import { createStyles, Theme, withStyles } from "@material-ui/core/styles"; import Typography from "@material-ui/core/Typography"; import CheckCircleIcon from "@material-ui/icons/CheckCircle"; import PageHeader from "../Common/PageHeader/PageHeader"; import { containerForHeader } from "../Common/FormComponents/common/styleLibrary"; import { planDetails, planItems, planButtons } from "./utils"; const styles = (theme: Theme) => createStyles({ pageTitle: { fontSize: 18, marginBottom: 20, }, paper: { padding: "20px 52px 20px 28px", }, tableContainer: { marginLeft: 28, }, detailsContainer: { textAlign: "center", paddingTop: 18, paddingBottom: 12, borderRadius: "3px 3px 0 0", marginLeft: 8, maxWidth: "calc(25% - 8px)", }, detailsContainerBorder: { border: "1px solid #e2e2e2", borderBottom: 0, }, detailsContainerBorderHighlighted: { border: "1px solid #9a93ad", borderBottom: 0, }, detailsTitle: { fontSize: 17, fontWeight: 700, marginBottom: 26, }, detailsPrice: { fontSize: 12, fontWeight: 700, marginBottom: 8, }, detailsCapacityMax: { minHeight: 28, fontSize: 10, fontWeight: 700, marginBottom: 12, padding: "0% 15%", color: "#474747", }, detailsCapacityMin: { fontSize: 10, }, itemContainer: { height: 36, borderTop: "1px solid #e5e5e5", }, itemContainerDetail: { height: 48, borderTop: "1px solid #e5e5e5", }, item: { height: "100%", borderLeft: "1px solid #e2e2e2", borderRight: "1px solid #e2e2e2", textAlign: "center", fontSize: 10, fontWeight: 700, display: "flex", alignItems: "center", alignContent: "center", marginLeft: 8, maxWidth: "calc(25% - 8px)", }, itemFirst: { borderLeft: 0, borderRight: 0, }, itemHighlighted: { borderLeft: "1px solid #9a93ad", borderRight: "1px solid #9a93ad", }, field: { textAlign: "left", fontWeight: 400, }, checkIcon: { height: 12, color: "transparent linear-gradient(90deg, #073052 0%, #081c42 100%) 0% 0% no-repeat padding-box", }, buttonContainer: { paddingTop: 8, paddingBottom: 24, height: "100%", display: "flex", justifyContent: "center", borderRadius: "0 0 3px 3px", border: "1px solid #e2e2e2", borderTop: 0, marginLeft: 8, maxWidth: "calc(25% - 8px)", }, buttonContainerBlank: { border: 0, }, buttonContainerHighlighted: { border: "1px solid #9a93ad", borderTop: 0, }, button: { textTransform: "none", fontSize: 15, fontWeight: 700, }, ...containerForHeader(theme.spacing(4)), }); interface ILicense { classes: any; } const License = ({ classes }: ILicense) => { return ( Upgrade to commercial license {planDetails.map((details: any) => { return ( {details.title} {details.price} {details.capacityMax || ""} {details.capacityMin} ); })} {planItems.map((item: any) => { return ( {item.field} {item.community === "N/A" ? ( "" ) : item.community === "Yes" ? ( ) : ( item.community )} {item.communityDetail !== undefined && ( {item.communityDetail} )} {item.standard === "N/A" ? ( "" ) : item.standard === "Yes" ? ( ) : ( item.standard )} {item.standardDetail !== undefined && ( {item.standardDetail} )} {item.enterprise === "N/A" ? ( "" ) : item.enterprise === "Yes" ? ( ) : ( item.enterprise )} {item.enterpriseDetail !== undefined && ( {item.enterpriseDetail} )} ); })} {planButtons.map((button: any) => { return ( ); })} ); }; export default withStyles(styles)(License);