import * as React from 'react'; import Button from '@mui/material/Button'; import Dialog from '@mui/material/Dialog'; import DialogActions from '@mui/material/DialogActions'; import DialogContent from '@mui/material/DialogContent'; import DialogTitle from '@mui/material/DialogTitle'; import ContactSelector from './ContactSelector'; import { Contact } from '../../../model/ProfileUtils'; import { Hash, Resources } from '@hyper-hyper-space/core'; import { Stack, Tab, Tabs, useMediaQuery, useTheme } from '@mui/material'; import ContactSelectorSomeoneNew from './ContactSelectorSomeoneNew'; import { Home } from '@hyper-hyper-space/home'; type ContactSelectorDialogProps = { handleSelect?: (...x: any[]) => Promise, preFilter?: (c: Contact) => boolean, excludedHashes?: Hash[], selectedHashes?: Hash[], home: Home, resourcesForDiscovery: Resources } const ContactsTab = 'contacts'; const SomeoneNewTab = 'someone new'; const ContactSelectorDialog = (props: ContactSelectorDialogProps) => { const [open, setOpen] = React.useState(false); const { handleSelect, resourcesForDiscovery, home } = props; const handleSelectionThenClose = (...x: any[]) => { handleSelect!(...x).then(() => setOpen(false)) } type ContactSource = 'contacts' | 'someone new' const [contactSource, setContactSource] = React.useState(ContactsTab) const handleClickOpen = () => { setOpen(true); }; const handleClose = () => { setOpen(false); }; const handleChangeContactSource = (event: React.SyntheticEvent, newValue: ContactSource) => { setContactSource(newValue); }; const theme = useTheme(); const fullScreen = useMediaQuery(theme.breakpoints.down('md')); return (
{"Add member"} {contactSource === ContactsTab && } {contactSource === SomeoneNewTab && }
); } export default ContactSelectorDialog