// Copyright (C) The Arvados Authors. All rights reserved. // // SPDX-License-Identifier: AGPL-3.0 import React from 'react'; import { ExpansionPanel, ExpansionPanelDetails, ExpansionPanelSummary } from '@material-ui/core'; import { reduxForm, Field } from 'redux-form'; import { Grid } from '@material-ui/core'; import { TextField } from 'components/text-field/text-field'; import { ExpandIcon } from 'components/icon/icon'; import * as IntInput from './inputs/int-input'; import { min } from 'validators/min'; import { optional } from 'validators/optional'; import { PROCESS_NAME_VALIDATION } from 'validators/validators'; export const RUN_PROCESS_ADVANCED_FORM = 'runProcessAdvancedForm'; export const DESCRIPTION_FIELD = 'description'; export const OUTPUT_FIELD = 'output'; export const RUNTIME_FIELD = 'runtime'; export const RAM_FIELD = 'ram'; export const VCPUS_FIELD = 'vcpus'; export const KEEP_CACHE_RAM_FIELD = 'keep_cache_ram'; export const RUNNER_IMAGE_FIELD = 'acr_container_image'; export interface RunProcessAdvancedFormData { [DESCRIPTION_FIELD]?: string; [OUTPUT_FIELD]?: string; [RUNTIME_FIELD]?: number; [RAM_FIELD]: number; [VCPUS_FIELD]: number; [KEEP_CACHE_RAM_FIELD]: number; [RUNNER_IMAGE_FIELD]: string; } export const RunProcessAdvancedForm = reduxForm({ form: RUN_PROCESS_ADVANCED_FORM, })(() =>
}> Advanced
); const ramValidation = [min(0)]; const vcpusValidation = [min(1)]; const keepCacheRamValidation = [optional(min(0))]; const runtimeValidation = [optional(min(1))];