import { JitsiMeeting } from '@jitsi/react-sdk' import { JITSI_DOMAIN } from '../../background/constants' import { UserInfo } from './types' import curry from 'just-curry-it' import { ConferenceData, displayNameChangeListener, displayNameChangeListenerWrapper, videoConferenceJoinedListener, } from '../../background/jitsi/eventListeners' import useJitsiEventCapture from '../../hooks/useJitsiEventCapture' interface Props { roomName: string userInfo: UserInfo conferenceData: ConferenceData | undefined setConferenceData: (newData: ConferenceData) => void } function JitsiEntrypoint({ roomName, userInfo, conferenceData, setConferenceData }: Props) { const { setDisplayNameChangeEvent } = useJitsiEventCapture( curry(displayNameChangeListener)(conferenceData)(setConferenceData) ) return ( { externalApi.addEventListener( 'videoConferenceJoined', curry(videoConferenceJoinedListener)(setConferenceData) ) externalApi.addEventListener( 'displayNameChange', curry(displayNameChangeListenerWrapper)(setDisplayNameChangeEvent) ) }} getIFrameRef={(iframeRef) => { iframeRef.style.height = '100%' iframeRef.style.width = '100%' }} /> ) } export default JitsiEntrypoint