import { MPVPanelProps } from 'components/multi-panel-view/multi-panel-view';
import { StyleRulesCallback, Typography, WithStyles, withStyles } from '@material-ui/core';
import { ArvadosTheme } from 'common/custom-theme';
+import { ProcessResource } from 'models/process';
+import { SubprocessProgressBar } from 'components/subprocess-progress-bar/subprocess-progress-bar';
+import { Process } from 'store/processes/process';
type CssRules = 'iconHeader' | 'cardHeader';
const styles: StyleRulesCallback<CssRules> = (theme: ArvadosTheme) => ({
iconHeader: {
fontSize: '1.875rem',
- color: theme.customs.colors.green700,
+ color: theme.customs.colors.greyL,
marginRight: theme.spacing.unit * 2,
},
cardHeader: {
type: ResourceKind | ContainerRequestState;
}
-export const subprocessPanelColumns: DataColumns<string> = [
+export const subprocessPanelColumns: DataColumns<string, ProcessResource> = [
{
name: SubprocessPanelColumnNames.NAME,
selected: true,
configurable: true,
- sortDirection: SortDirection.NONE,
+ sort: {direction: SortDirection.NONE, field: "name"},
filters: createTree(),
render: uuid => <ResourceName uuid={uuid} />
},
name: SubprocessPanelColumnNames.CREATED_AT,
selected: true,
configurable: true,
- sortDirection: SortDirection.DESC,
+ sort: {direction: SortDirection.DESC, field: "createdAt"},
filters: createTree(),
render: uuid => <ResourceCreatedAtDate uuid={uuid} />
},
];
export interface SubprocessPanelDataProps {
+ process: Process;
resources: ResourcesState;
}
export interface SubprocessPanelActionProps {
- onItemClick: (item: string) => void;
+ onRowClick: (item: string) => void;
onContextMenu: (event: React.MouseEvent<HTMLElement>, item: string, resources: ResourcesState) => void;
onItemDoubleClick: (item: string) => void;
}
export const SubprocessPanelRoot = (props: SubprocessPanelProps & MPVPanelProps) => {
return <DataExplorer
id={SUBPROCESS_PANEL_ID}
- onRowClick={props.onItemClick}
+ onRowClick={props.onRowClick}
onRowDoubleClick={props.onItemDoubleClick}
onContextMenu={(event, item) => props.onContextMenu(event, item, props.resources)}
contextMenuColumn={true}
doUnMaximizePanel={props.doUnMaximizePanel}
panelMaximized={props.panelMaximized}
panelName={props.panelName}
- title={<SubProcessesTitle/>} />;
+ title={<SubProcessesTitle/>}
+ progressBar={<SubprocessProgressBar process={props.process} />} />;
};