import { FC } from 'react'; import { Container, Row } from 'components/layout'; import { useResponsiveLayout } from 'hooks'; import { ResizeMode, Video } from 'expo-av'; import { metrics } from 'config'; import { Text } from 'components/text'; import { ChatFill, Mic, Smiling } from 'icons'; import { Fab } from 'components/fab'; import { Visible } from 'components/visible'; import { Direct } from './direct'; const { STYLES } = metrics; export const Participants: FC = ({ isPopUp, participants }) => { const { width, height, isMobile } = useResponsiveLayout(); const leftAvoid = isMobile ? 0 : STYLES.sideBarCollapseWidth; const topAvoid = STYLES.topBarHeight * 2; const perItemHeight = isPopUp ? 300 : (height - topAvoid) / (participants.length - 1); const perItemWidth = isPopUp ? 200 : (width - leftAvoid) / participants.length; const isDirect = participants.length == 2; return ( {participants.map((participant) => ( Sara } /> } /> ))} ); }; type ParticipantType = { id: string; uri: string; username: string; }; interface ParticipantsProps { isPopUp: boolean; participants: ParticipantType[]; }