1 // Copyright (C) The Arvados Authors. All rights reserved.
3 // SPDX-License-Identifier: AGPL-3.0
5 import * as React from "react";
6 import { MenuItem, Typography } from "@material-ui/core";
7 import { DropdownMenu } from "~/components/dropdown-menu/dropdown-menu";
8 import { ImportContactsIcon, HelpIcon } from "~/components/icon/icon";
9 import { ArvadosTheme } from '~/common/custom-theme';
10 import { StyleRulesCallback, WithStyles, withStyles } from '@material-ui/core/styles';
12 type CssRules = 'link' | 'icon' | 'title' | 'linkTitle' | 'linkContent';
14 const styles: StyleRulesCallback<CssRules> = (theme: ArvadosTheme) => ({
16 textDecoration: 'none',
25 paddingBottom: theme.spacing.unit * 0.5,
26 paddingLeft: theme.spacing.unit * 2,
27 paddingTop: theme.spacing.unit * 0.5,
31 marginLeft: theme.spacing.unit
40 title: "Public Pipelines and Data sets",
41 link: "https://dev.arvados.org/projects/arvados/wiki/Public_Pipelines_and_Datasets",
44 title: "Tutorials and User guide",
45 link: "http://doc.arvados.org/user/",
48 title: "API Reference",
49 link: "http://doc.arvados.org/api/",
52 title: "SDK Reference",
53 link: "http://doc.arvados.org/sdk/"
57 export const HelpMenu = withStyles(styles)(
58 ({ classes }: WithStyles<CssRules>) =>
63 <li className={classes.title}>
64 <Typography variant="body1">Help</Typography>
68 <MenuItem key={link.title}>
69 <a href={link.link} target="_blank" className={classes.link}>
70 <div className={classes.linkContent}>
71 <ImportContactsIcon className={classes.icon} />
72 <Typography variant="body1" className={classes.linkTitle}>{link.title}</Typography>