diff --git a/packages/desktop/src/components/lines/lineRow.tsx/index.tsx b/packages/desktop/src/components/lines/lineRow.tsx/index.tsx index 85f6db5..7b3712d 100644 --- a/packages/desktop/src/components/lines/lineRow.tsx/index.tsx +++ b/packages/desktop/src/components/lines/lineRow.tsx/index.tsx @@ -1,9 +1,9 @@ -import { useCallback, useMemo } from "react"; +import { FiActivity, FiSun } from "react-icons/fi"; +import { useCallback, useEffect, useMemo } from "react"; import { useRecoilState, useSetRecoilState } from "recoil"; import { $selectedLineId } from "../../../controller/recoil"; import { Avatar } from "antd"; -import { FiSun } from "react-icons/fi"; import LineIcon from "../lineIcon"; import { LineMemberState } from "@nirvana/core/models/line.model"; import MasterLineData from "@nirvana/core/models/masterLineData.model"; @@ -26,13 +26,22 @@ export default function LineRow({ setSelectedLineId(masterLineData.lineDetails._id.toString()); }, [setSelectedLineId, masterLineData]); + // take the source of truth list of memeberIds tuned in, and see if I'm in it + const isUserTunedIn = useMemo( + () => + masterLineData.tunedInMemberIds?.includes(userData?.user?._id.toString()), + [masterLineData.tunedInMemberIds, userData] + ); + /** * TODO: slowly add to this and fix based on added features * */ const renderActivityIcon = useMemo(() => { + if (isUserTunedIn) return ; + // if there is someone or me broadcasting here - // if (masterLineData.currentUserMember.lastVisitDate) - return ; + if (masterLineData.currentBroadcastersUserIds?.length > 0) + return ; // if there is new activity blocks for me if (masterLineData.currentUserMember.lastVisitDate) @@ -43,11 +52,11 @@ export default function LineRow({ return ( ); - }, [masterLineData]); + }, [masterLineData, isUserTunedIn]); const renderRightActivity = useMemo(() => { - // TODO: this should be the list of broadcasters, not members...change once we have that - if (masterLineData.otherUserObjects?.length) + // TODO: get the profile pictures of the broadcasters + if (masterLineData.currentBroadcastersUserIds?.length > 0) return (