X-Git-Url: https://git.arvados.org/arvados-workbench2.git/blobdiff_plain/e79b7364ea28b6f0719c9adf409ba1217b9ccac8..b7de31f185fccd2f9b276c1e89754d288e7facfe:/src/views/workflow-panel/workflow-description-card.tsx diff --git a/src/views/workflow-panel/workflow-description-card.tsx b/src/views/workflow-panel/workflow-description-card.tsx index a9835640..02408b06 100644 --- a/src/views/workflow-panel/workflow-description-card.tsx +++ b/src/views/workflow-panel/workflow-description-card.tsx @@ -3,21 +3,55 @@ // SPDX-License-Identifier: AGPL-3.0 import * as React from 'react'; -import { StyleRulesCallback, WithStyles, withStyles, CardContent, Tab, Tabs, Typography, List, ListItem, Table, TableHead, TableCell, TableBody, TableRow } from '@material-ui/core'; +import { + StyleRulesCallback, + WithStyles, + withStyles, + CardContent, + Tab, + Tabs, + Table, + TableHead, + TableCell, + TableBody, + TableRow +} from '@material-ui/core'; import { ArvadosTheme } from '~/common/custom-theme'; import { WorkflowIcon } from '~/components/icon/icon'; import { DataTableDefaultView } from '~/components/data-table-default-view/data-table-default-view'; import { WorkflowResource, parseWorkflowDefinition, getWorkflowInputs, getInputLabel, stringifyInputType } from '~/models/workflow'; +import { WorkflowGraph } from "~/views/workflow-panel/workflow-graph"; -export type CssRules = 'root' | 'tab'; +export type CssRules = 'root' | 'tab' | 'inputTab' | 'graphTab' | 'descriptionTab' | 'inputsTable'; const styles: StyleRulesCallback = (theme: ArvadosTheme) => ({ root: { - height: '100%', + height: '100%' }, tab: { - minWidth: '50%' - } + minWidth: '33%' + }, + inputTab: { + overflow: 'auto', + maxHeight: '300px', + marginTop: theme.spacing.unit, + '&:last-child': { + paddingBottom: theme.spacing.unit / 2, + } + }, + graphTab: { + overflow: 'auto', + height: '450px', + marginTop: theme.spacing.unit, + }, + descriptionTab: { + overflow: 'auto', + maxHeight: '300px', + marginTop: theme.spacing.unit, + }, + inputsTable: { + tableLayout: 'fixed', + }, }); interface WorkflowDetailsCardDataProps { @@ -38,22 +72,26 @@ export const WorkflowDetailsCard = withStyles(styles)( render() { const { classes, workflow } = this.props; + if (workflow) { + console.log(workflow.definition); + } const { value } = this.state; return
+ - {value === 0 && - {workflow ? ( - workflow.description - ) : ( + {value === 0 && + {workflow ?
+ {workflow.description} +
: ( )}
} - {value === 1 && + {value === 1 && {workflow ? this.renderInputsTable() : } } + {value === 2 && + {workflow + ? + : + } + }
; } @@ -75,7 +121,7 @@ export const WorkflowDetailsCard = withStyles(styles)( } renderInputsTable() { - return + return
Label @@ -93,4 +139,4 @@ export const WorkflowDetailsCard = withStyles(styles)(
; } - }); \ No newline at end of file + });