Files
user-front/src/core/components/SelectBox.jsx
2023-07-20 10:39:58 +03:30

56 lines
1.1 KiB
JavaScript

import {
FormControl,
FormHelperText,
InputLabel,
MenuItem,
Select,
} from "@mui/material";
function SelectBox({
select,
selectType,
selectors,
label,
setFieldValue,
setFieldTouched,
error,
helperText,
}) {
const handleChange = (event) => {
setFieldValue(selectType, event.target.value);
};
const handleBlur = () => {
setFieldTouched(select, true);
};
return (
<FormControl
variant="outlined"
margin="normal"
fullWidth
size="small"
error={error}
>
<InputLabel id="language-label">{label}</InputLabel>
<Select
labelId="language-label"
id={select}
name={select}
size="small"
value={select}
onChange={handleChange}
label="Language"
onBlur={handleBlur}
>
{selectors.map((selector) => (
<MenuItem key={selector.id} value={selector.value}>
{selector.name}
</MenuItem>
))}
</Select>
<FormHelperText>{helperText}</FormHelperText>
</FormControl>
);
}
export default SelectBox;