From 66d2b91dfdcfb4b5c5fe90ddb7a3e3e66e01e502 Mon Sep 17 00:00:00 2001 From: Anton Tananaev Date: Wed, 30 Sep 2020 22:43:57 -0700 Subject: Migrate Select to SelectField --- modern/src/DevicePage.js | 54 +++++++++++++++++------------------------------- 1 file changed, 19 insertions(+), 35 deletions(-) (limited to 'modern/src/DevicePage.js') diff --git a/modern/src/DevicePage.js b/modern/src/DevicePage.js index 45eba3f..d4b83e6 100644 --- a/modern/src/DevicePage.js +++ b/modern/src/DevicePage.js @@ -3,11 +3,11 @@ import TextField from '@material-ui/core/TextField'; import t from './common/localization'; import EditItemView from './EditItemView'; -import { Accordion, AccordionSummary, AccordionDetails, makeStyles, Typography, FormControl, InputLabel, Select, FormControlLabel, Checkbox } from '@material-ui/core'; +import { Accordion, AccordionSummary, AccordionDetails, makeStyles, Typography, FormControlLabel, Checkbox } from '@material-ui/core'; import ExpandMoreIcon from '@material-ui/icons/ExpandMore'; -import { useEffectAsync } from './reactHelper'; import EditAttributesView from './attributes/EditAttributesView'; import deviceAttributes from './attributes/deviceAttributes'; +import SelectField from './form/SelectField'; const useStyles = makeStyles(() => ({ details: { @@ -43,14 +43,6 @@ const DevicePage = () => { const classes = useStyles(); const [item, setItem] = useState(); - const [groups, setGroups] = useState(); - - useEffectAsync(async () => { - const response = await fetch('/api/groups'); - if (response.ok) { - setGroups(await response.json()); - } - }, []); return ( @@ -84,20 +76,13 @@ const DevicePage = () => { - {groups && - - {t('groupParent')} - - - } + setItem({...item, groupId: Number(event.target.value)})} + endpoint="/api/groups" + label={t('groupParent')} + variant="filled" /> { onChange={event => setItem({...item, contact: event.target.value})} label={t('deviceContact')} variant="filled" /> - - {t('deviceCategory')} - - + setItem({...item, category: event.target.value})} + data={deviceCategories.map(category => ({ + id: category, + name: t(`category${category.replace(/^\w/, c => c.toUpperCase())}`) + }))} + label={t('deviceCategory')} + variant="filled" /> setItem({...item, disabled: event.target.checked})} />} label={t('sharedDisabled')} /> -- cgit v1.2.3