import { FormControl, InputLabel, MenuItem, Select, } from '@mui/material'; import React, { useState } from 'react'; import { useEffectAsync } from '../../reactHelper'; const SelectField = ({ label, fullWidth, multiple, value, emptyValue = 0, emptyTitle = '\u00a0', onChange, endpoint, data, keyGetter = (item) => item.id, titleGetter = (item) => item.name, }) => { const [items, setItems] = useState(data); useEffectAsync(async () => { if (endpoint) { const response = await fetch(endpoint); if (response.ok) { setItems(await response.json()); } else { throw Error(await response.text()); } } }, []); if (items) { return ( {label} ); } return null; }; export default SelectField;