X-Git-Url: https://git.arvados.org/arvados-workbench2.git/blobdiff_plain/486b1bf637827063cdedef283907da2dcc63ad22..b61a12ca0d14433ddb10a6d6361a18b1f127c98e:/src/views/process-panel/process-panel-root.tsx diff --git a/src/views/process-panel/process-panel-root.tsx b/src/views/process-panel/process-panel-root.tsx index deb5f1b0..f8ff8430 100644 --- a/src/views/process-panel/process-panel-root.tsx +++ b/src/views/process-panel/process-panel-root.tsx @@ -4,7 +4,6 @@ import React from 'react'; import { Grid, StyleRulesCallback, WithStyles, withStyles } from '@material-ui/core'; -import { ProcessInformationCard } from './process-information-card'; import { DefaultView } from 'components/default-view/default-view'; import { ProcessIcon } from 'components/icon/icon'; import { Process } from 'store/processes/process'; @@ -13,6 +12,10 @@ import { SubprocessFilterDataProps } from 'components/subprocess-filter/subproce import { MPVContainer, MPVPanelContent, MPVPanelState } from 'components/multi-panel-view/multi-panel-view'; import { ArvadosTheme } from 'common/custom-theme'; import { ProcessDetailsCard } from './process-details-card'; +import { getProcessPanelLogs, ProcessLogsPanel } from 'store/process-logs-panel/process-logs-panel'; +import { ProcessLogsCard } from './process-log-card'; +import { FilterOption } from 'views/process-panel/process-log-form'; +import { ProcessCmdCard } from './process-cmd-card'; type CssRules = 'root'; @@ -26,42 +29,60 @@ export interface ProcessPanelRootDataProps { process?: Process; subprocesses: Array; filters: Array; + processLogsPanel: ProcessLogsPanel; } export interface ProcessPanelRootActionProps { onContextMenu: (event: React.MouseEvent, process: Process) => void; onToggle: (status: string) => void; - openProcessInputDialog: (uuid: string) => void; - navigateToOutput: (uuid: string) => void; - navigateToWorkflow: (uuid: string) => void; cancelProcess: (uuid: string) => void; + onLogFilterChange: (filter: FilterOption) => void; + navigateToLog: (uuid: string) => void; + onCopyToClipboard: (uuid: string) => void; } export type ProcessPanelRootProps = ProcessPanelRootDataProps & ProcessPanelRootActionProps & WithStyles; const panelsData: MPVPanelState[] = [ - {name: "Info"}, - {name: "Details", visible: false}, + {name: "Details"}, + {name: "Command"}, + {name: "Logs", visible: true}, {name: "Subprocesses"}, ]; -export const ProcessPanelRoot = withStyles(styles)(({ process, ...props }: ProcessPanelRootProps) => +export const ProcessPanelRoot = withStyles(styles)( + ({ process, processLogsPanel, ...props }: ProcessPanelRootProps) => process ? - - + props.onContextMenu(event, process)} - openProcessInputDialog={props.openProcessInputDialog} - navigateToOutput={props.navigateToOutput} - openWorkflow={props.navigateToWorkflow} cancelProcess={props.cancelProcess} /> - - + + - + + ({ label: filter, value: filter }) + )} + onLogFilterChange={props.onLogFilterChange} + navigateToLog={props.navigateToLog} + /> + + @@ -73,4 +94,3 @@ export const ProcessPanelRoot = withStyles(styles)(({ process, ...props }: Proce icon={ProcessIcon} messages={['Process not found']} /> ); -