import PropTypes from 'prop-types' import React, { useRef } from 'react' import { Form, FormGroup, Input, Label } from 'reactstrap' import Modal from '../Modal' import { AVAILABLE_METRICS, METRIC_NAMES } from '../../../util/available-metrics' const NewPortfolioModalComponent = ({ show, callback }) => { const form = useRef(null) const textInput = useRef(null) const repeatsInput = useRef(null) const metricCheckboxes = useRef({}) const onSubmit = () => { if (form.current.reportValidity()) { callback(textInput.current.value, { enabledMetrics: AVAILABLE_METRICS.filter((metric) => metricCheckboxes.current[metric].checked), repeatsPerScenario: parseInt(repeatsInput.current.value), }) return true } else { return false } } const onCancel = () => callback(undefined) return (
{ e.preventDefault() this.onSubmit() }} innerRef={form} >

Targets

Metrics
{AVAILABLE_METRICS.map((metric) => ( ))}
) } NewPortfolioModalComponent.propTypes = { show: PropTypes.bool.isRequired, callback: PropTypes.func.isRequired, } export default NewPortfolioModalComponent