import React, { useContext, useEffect } from 'react'; import { useTranslation } from 'react-i18next'; import { Dialog, DialogContent, List, Typography, Select, Grid, MenuItem, SelectChangeEvent, } from '@mui/material'; import RobotAvatar from '../RobotAvatar'; import RobotInfo from '../RobotInfo'; import { FederationContext, type UseFederationStoreType } from '../../contexts/FederationContext'; import { GarageContext, type UseGarageStoreType } from '../../contexts/GarageContext'; import { Slot, type Coordinator } from '../../models'; interface Props { open: boolean; onClose: () => void; } const ProfileDialog = ({ open = false, onClose }: Props): React.JSX.Element => { const { federation } = useContext(FederationContext); const { garage } = useContext(GarageContext); const { t } = useTranslation(); useEffect(() => { loadRobot(garage.currentSlot ?? ''); }, []); const loadRobot = (token: string) => { garage.setCurrentSlot(token); garage.fetchRobot(federation, garage.getSlot()?.token ?? ''); }; const handleChangeSlot = (e: SelectChangeEvent): void => { if (e?.target?.value) loadRobot(e.target.value as string); }; return ( {t('Your Robot')} {t('Coordinators that know your robot:')} {federation.getCoordinators().map((coordinator: Coordinator): React.JSX.Element => { return (
); })}
); }; export default ProfileDialog;