trying to clean it

This commit is contained in:
talksik
2022-05-14 12:55:18 -05:00
parent 1a82c105b4
commit b26ba3bda7
2 changed files with 15 additions and 14 deletions
@@ -19,7 +19,7 @@
* listen for any calls to me, as well as any answers back to me * listen for any calls to me, as well as any answers back to me
*/ */
import React, { useEffect, useContext, useState, useRef } from 'react'; import React, { useEffect, useContext, useState, useRef, useMemo } from 'react';
import Peer from 'simple-peer'; import Peer from 'simple-peer';
import useRealTimeRooms from './RealTimeRoomProvider'; import useRealTimeRooms from './RealTimeRoomProvider';
import useAuth from './AuthProvider'; import useAuth from './AuthProvider';
@@ -110,6 +110,9 @@ export function StreamProvider({ children }: { children: React.ReactChild }) {
}; };
}, [$ws, updatePeerMap, peerMap]); }, [$ws, updatePeerMap, peerMap]);
const numberRooms = useMemo(() => Object.keys(roomsMap).length, [roomsMap]);
// run with initial list of tunedinUsers
useEffect(() => { useEffect(() => {
// get distinct peers that we need to build a connection with // get distinct peers that we need to build a connection with
const userIdsSet = new Set<string>(); const userIdsSet = new Set<string>();
@@ -151,7 +154,7 @@ export function StreamProvider({ children }: { children: React.ReactChild }) {
draft[userIdToCall] = localPeerConnection; draft[userIdToCall] = localPeerConnection;
}); });
}); });
}, [user, roomsMap, $ws, updatePeerMap, userLocalStream]); //TODO: make this not run on EVERY update to roomsMap? only tuned in lists? so the separate map for that? }, [user, numberRooms, $ws, updatePeerMap]); //TODO: make this not run on EVERY update to roomsMap? only tuned in lists? so the separate map for that?
const prevStream = usePrevious<MediaStream>(userLocalStream); const prevStream = usePrevious<MediaStream>(userLocalStream);
@@ -166,16 +169,16 @@ export function StreamProvider({ children }: { children: React.ReactChild }) {
}, [localStreamRef]); }, [localStreamRef]);
useEffect(() => { useEffect(() => {
// if (userLocalStream) { if (userLocalStream) {
// Object.values(peerMap).forEach((currentPeer) => { Object.values(peerMap).forEach((currentPeer) => {
// try { try {
// currentPeer.addStream(userLocalStream); currentPeer.addStream(userLocalStream);
// } catch (error) { } catch (error) {
// toast.error('problem adding stream'); toast.error('problem adding stream');
// console.error(error); console.error(error);
// } }
// }); });
// } }
}, [userLocalStream, peerMap, prevStream]); }, [userLocalStream, peerMap, prevStream]);
console.log(peerMap); console.log(peerMap);
@@ -110,8 +110,6 @@ function LineRowTest({
handleSelectLine: (newLineId: string) => void; handleSelectLine: (newLineId: string) => void;
isSelected: boolean; isSelected: boolean;
}) { }) {
console.warn('re-rendering', line.lineDetails._id.toString());
const { user } = useAuth(); const { user } = useAuth();
const isUserTunedIn = useMemo( const isUserTunedIn = useMemo(