// @flow import * as React from 'react'; import { injectIntl } from 'react-intl'; import Label from '../../../components/label/Label'; import SingleSelectField from '../../../components/select-field/SingleSelectField'; import messages from '../messages'; import './EnumField.scss'; type Option = { displayText: string, isSelectable: boolean, value: string, }; type Props = { dataKey: string, dataValue?: MetadataFieldValue, description?: string, displayName: string, intl: any, onChange: (key: string, value: MetadataFieldValue) => void, onRemove: (key: string) => void, options?: Array, }; const EnumField = ({ dataKey, dataValue, displayName, description, intl, onChange, onRemove, options = [] }: Props) => { const selectOptions = options.map(option => ({ displayText: option.key, value: option.key, isSelectable: true, })); const defaultValue = intl.formatMessage(messages.metadataFieldSelectValue); selectOptions.unshift({ displayText: defaultValue, value: defaultValue, isSelectable: false, }); return (
); }; export { EnumField as EnumFieldBase }; export default injectIntl(EnumField);