}
export interface WorkflowResoruceDefinition {
cwlVersion: string;
- $graph: Array<Workflow | CommandLineTool>;
+ graph?: Array<Workflow | CommandLineTool>;
+ $graph?: Array<Workflow | CommandLineTool>;
}
export interface Workflow {
class: 'Workflow';
};
export const getWorkflowInputs = (workflowDefinition: WorkflowResoruceDefinition) => {
- const mainWorkflow = workflowDefinition.$graph.find(item => item.class === 'Workflow' && item.id === '#main');
- return mainWorkflow
- ? mainWorkflow.inputs
- : undefined;
+ if (workflowDefinition.graph) {
+ const mainWorkflow = workflowDefinition.graph.find(item => item.class === 'Workflow' && item.id === '#main');
+ return mainWorkflow
+ ? mainWorkflow.inputs
+ : undefined;
+ } else {
+ const mainWorkflow = workflowDefinition.$graph!.find(item => item.class === 'Workflow' && item.id === '#main');
+ return mainWorkflow
+ ? mainWorkflow.inputs
+ : undefined;
+ }
};
+
export const getInputLabel = (input: CommandInputParameter) => {
return `${input.label || input.id}`;
};