X-Git-Url: https://git.arvados.org/arvados-workbench2.git/blobdiff_plain/f3ce859fafc0a4ac1496c0848ceb4f648a2f7dc2..9da78c51275666c685545d29cd92ffa0d32f7b2f:/src/views/run-process-panel/run-process-inputs-form.tsx diff --git a/src/views/run-process-panel/run-process-inputs-form.tsx b/src/views/run-process-panel/run-process-inputs-form.tsx index 8ec51f6b..46ab3c52 100644 --- a/src/views/run-process-panel/run-process-inputs-form.tsx +++ b/src/views/run-process-panel/run-process-inputs-form.tsx @@ -2,13 +2,13 @@ // // SPDX-License-Identifier: AGPL-3.0 -import * as React from 'react'; +import React from 'react'; import { reduxForm, InjectedFormProps } from 'redux-form'; -import { CommandInputParameter, CWLType, IntCommandInputParameter, BooleanCommandInputParameter, FileCommandInputParameter, DirectoryCommandInputParameter, DirectoryArrayCommandInputParameter } from '~/models/workflow'; -import { IntInput } from '~/views/run-process-panel/inputs/int-input'; -import { StringInput } from '~/views/run-process-panel/inputs/string-input'; -import { StringCommandInputParameter, FloatCommandInputParameter, isPrimitiveOfType, File, Directory, WorkflowInputsData, EnumCommandInputParameter, isArrayOfType, StringArrayCommandInputParameter, FileArrayCommandInputParameter } from '../../models/workflow'; -import { FloatInput } from '~/views/run-process-panel/inputs/float-input'; +import { CommandInputParameter, CWLType, IntCommandInputParameter, BooleanCommandInputParameter, FileCommandInputParameter, DirectoryCommandInputParameter, DirectoryArrayCommandInputParameter, FloatArrayCommandInputParameter, IntArrayCommandInputParameter } from 'models/workflow'; +import { IntInput } from 'views/run-process-panel/inputs/int-input'; +import { StringInput } from 'views/run-process-panel/inputs/string-input'; +import { StringCommandInputParameter, FloatCommandInputParameter, isPrimitiveOfType, WorkflowInputsData, EnumCommandInputParameter, isArrayOfType, StringArrayCommandInputParameter, FileArrayCommandInputParameter } from '../../models/workflow'; +import { FloatInput } from 'views/run-process-panel/inputs/float-input'; import { BooleanInput } from './inputs/boolean-input'; import { FileInput } from './inputs/file-input'; import { connect } from 'react-redux'; @@ -20,6 +20,8 @@ import { StringArrayInput } from './inputs/string-array-input'; import { createStructuredSelector, createSelector } from 'reselect'; import { FileArrayInput } from './inputs/file-array-input'; import { DirectoryArrayInput } from './inputs/directory-array-input'; +import { FloatArrayInput } from './inputs/float-array-input'; +import { IntArrayInput } from './inputs/int-array-input'; export const RUN_PROCESS_INPUTS_FORM = 'runProcessInputsForm'; @@ -33,7 +35,7 @@ const inputsSelector = (props: RunProcessInputFormProps) => const initialValuesSelector = createSelector( inputsSelector, inputs => inputs.reduce( - (values, input) => ({ ...values, [input.id]: input.default }), + (values, input) => ({ ...values, [input.id]: input.value || input.default }), {})); const propsSelector = createStructuredSelector({ @@ -87,10 +89,10 @@ const getInputComponent = (input: CommandInputParameter) => { return ; case isPrimitiveOfType(input, CWLType.FILE): - return ; + return ; case isPrimitiveOfType(input, CWLType.DIRECTORY): - return ; + return ; case typeof input.type === 'object' && !(input.type instanceof Array) && @@ -100,11 +102,19 @@ const getInputComponent = (input: CommandInputParameter) => { case isArrayOfType(input, CWLType.STRING): return ; + case isArrayOfType(input, CWLType.INT): + case isArrayOfType(input, CWLType.LONG): + return ; + + case isArrayOfType(input, CWLType.FLOAT): + case isArrayOfType(input, CWLType.DOUBLE): + return ; + case isArrayOfType(input, CWLType.FILE): - return ; - + return ; + case isArrayOfType(input, CWLType.DIRECTORY): - return ; + return ; default: return null;