// Copyright (C) The Arvados Authors. All rights reserved. // // SPDX-License-Identifier: AGPL-3.0 import * as React from 'react'; import { StyleRulesCallback, WithStyles, withStyles, Card, CardHeader, IconButton, CardContent, Grid, Chip } from '@material-ui/core'; import { ArvadosTheme } from '~/common/custom-theme'; import { ProcessResource } from '~/models/process'; import { DispatchProp, connect } from 'react-redux'; import { MoreOptionsIcon, ProcessIcon } from '~/components/icon/icon'; import { DetailsAttribute } from '~/components/details-attribute/details-attribute'; import { RootState } from '~/store/store'; import { ContextMenuKind } from '~/views-components/context-menu/context-menu'; import { openContextMenu } from '~/store/context-menu/context-menu-actions'; type CssRules = 'card' | 'iconHeader' | 'label' | 'value' | 'content' | 'chip' | 'headerText' | 'link'; const styles: StyleRulesCallback = (theme: ArvadosTheme) => ({ card: { marginBottom: theme.spacing.unit * 2, }, iconHeader: { fontSize: '1.875rem', color: theme.customs.colors.green700 }, label: { fontSize: '0.875rem', }, value: { textTransform: 'none', fontSize: '0.875rem' }, content: { display: 'flex', paddingBottom: '0px ', paddingTop: '0px', '&:last-child': { paddingBottom: '0px ', } }, link: { fontSize: '0.875rem', color: theme.palette.primary.main, '&:hover': { cursor: 'pointer' } }, chip: { height: theme.spacing.unit * 2.5, width: theme.spacing.unit * 12, backgroundColor: theme.customs.colors.green700, color: theme.palette.common.white, fontSize: '0.875rem', borderRadius: theme.spacing.unit * 0.625 }, headerText: { fontSize: '0.875rem', position: 'relative', top: -theme.spacing.unit * 4.5, left: theme.spacing.unit * 3, } }); interface ProcessInformationCardDataProps { item: ProcessResource; } type InformationCardProps = ProcessInformationCardDataProps & DispatchProp & WithStyles; export const InformationCard = withStyles(styles)( connect((state: RootState) => ({ item: state.collectionPanel.item }))( class extends React.Component { render() { const { classes } = this.props; return
} action={ } title="Pipeline template that generates a config file from a template" /> } /> This container request was created from the workflow FastQC MultiQC
; } handleContextMenu = (event: React.MouseEvent) => { // const { uuid, name, description } = this.props.item; const resource = { uuid: '', name: '', description: '', kind: ContextMenuKind.PROCESS }; this.props.dispatch(openContextMenu(event, resource)); } } ) );