import React, { useState } from 'react';
import { useDispatch } from 'react-redux';
import {
Accordion, AccordionSummary, AccordionDetails, Typography, TextField,
} from '@mui/material';
import makeStyles from '@mui/styles/makeStyles';
import ExpandMoreIcon from '@mui/icons-material/ExpandMore';
import EditItemView from './components/EditItemView';
import EditAttributesAccordion from './components/EditAttributesAccordion';
import { useTranslation } from '../common/components/LocalizationProvider';
import useGeofenceAttributes from '../common/attributes/useGeofenceAttributes';
import SettingsMenu from './components/SettingsMenu';
import SelectField from '../common/components/SelectField';
import { geofencesActions } from '../store';
const useStyles = makeStyles((theme) => ({
details: {
display: 'flex',
flexDirection: 'column',
gap: theme.spacing(2),
paddingBottom: theme.spacing(3),
},
}));
const GeofencePage = () => {
const classes = useStyles();
const dispatch = useDispatch();
const t = useTranslation();
const geofenceAttributes = useGeofenceAttributes(t);
const [item, setItem] = useState();
const onItemSaved = (result) => {
dispatch(geofencesActions.update([result]));
};
const validate = () => item && item.name;
return (
}
breadcrumbs={['settingsTitle', 'sharedGeofence']}
>
{item && (
<>
}>
{t('sharedRequired')}
setItem({ ...item, name: event.target.value })}
label={t('sharedName')}
/>
}>
{t('sharedExtra')}
setItem({ ...item, description: event.target.value })}
label={t('sharedDescription')}
/>
setItem({ ...item, calendarId: Number(event.target.value) })}
endpoint="/api/calendars"
label={t('sharedCalendar')}
/>
setItem({ ...item, attributes })}
definitions={geofenceAttributes}
/>
>
)}
);
};
export default GeofencePage;