-type WorkflowPanelProps = WorkflowPanelDataProps & DispatchProp;
-
-export const WorkflowPanel = connect((state: RootState) => ({
- resources: state.resources
-}))(
- class extends React.Component<WorkflowPanelProps> {
- render() {
- return <Grid container>
- <Grid item xs={6} style={{ paddingRight: '24px', display: 'grid' }}>
- <DataExplorer
- id={WORKFLOW_PANEL_ID}
- onRowClick={this.handleRowClick}
- onRowDoubleClick={this.handleRowDoubleClick}
- onContextMenu={this.handleContextMenu}
- contextMenuColumn={false}
- dataTableDefaultView={<DataTableDefaultView icon={WorkflowIcon} />} />
- </Grid>
- <Grid item xs={6}>
- <WorkflowDescriptionCard />
- </Grid>
- </Grid>;
- }
-
- handleContextMenu = (event: React.MouseEvent<HTMLElement>, resourceUuid: string) => {
- const resource = getResource<GroupResource>(resourceUuid)(this.props.resources);
- if (resource) {
- this.props.dispatch<any>(openContextMenu(event, {
- name: '',
- uuid: resource.uuid,
- ownerUuid: resource.ownerUuid,
- isTrashed: resource.isTrashed,
- kind: resource.kind,
- menuKind: ContextMenuKind.PROJECT,
- }));
- }
- }
-
- handleRowDoubleClick = (uuid: string) => {
- this.props.dispatch<any>(navigateTo(uuid));
- }
-
- handleRowClick = (uuid: string) => {
- this.props.dispatch(loadDetailsPanel(uuid));
- }