import React from 'react'; import PropTypes from 'prop-types'; import { Field as FormikField } from 'formik'; import { Spinner } from '@patternfly/react-core'; import { TypeAheadSelect } from 'patternfly-react'; import { filter } from 'lodash'; import { translate as __ } from 'foremanReact/common/I18n'; import FormField from 'foremanReact/components/common/forms/FormField'; const ForemanFormikField = ({ name, type, required, label, labelHelp, inputSizeClass, labelSizeClass, rows, placeholder, options, isLoading, disabled, setDisabled, }) => ( {({ field, // { name, value, onChange, onBlur } form: { touched, errors, setFieldValue, setFieldTouched }, // also values, setXXXX, handleXXXX, dirty, isValid, status, etc. }) => { const defaultSelection = (fieldValue, initialOptions) => { if (!fieldValue) return []; return filter(initialOptions, o => o.value === fieldValue); }; const passwordInput = ( ); let content = null; switch (type) { case 'textarea': content = (