X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/01a728d112f5728b9552c7e63f074487a4d056f0..23199ed951991534b1c582dce5b609f758f50a68:/src/models/workflow.ts diff --git a/src/models/workflow.ts b/src/models/workflow.ts index 3a38348ef2..a858c0d7de 100644 --- a/src/models/workflow.ts +++ b/src/models/workflow.ts @@ -13,7 +13,8 @@ export interface WorkflowResource extends Resource { } export interface WorkflowResoruceDefinition { cwlVersion: string; - $graph: Array; + graph?: Array; + $graph?: Array; } export interface Workflow { class: 'Workflow'; @@ -122,11 +123,19 @@ export const parseWorkflowDefinition = (workflow: WorkflowResource): WorkflowRes }; 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}`; };