more cleanup and better to have some prop drilling but just stay balanced here
This commit is contained in:
@@ -29,6 +29,10 @@ const socketIdsToUserIds: {
|
|||||||
export default function InitializeWs(io: any) {
|
export default function InitializeWs(io: any) {
|
||||||
console.log("initializing web sockets");
|
console.log("initializing web sockets");
|
||||||
|
|
||||||
|
setInterval(() => {
|
||||||
|
console.log(socketIdsToUserIds);
|
||||||
|
}, 5000);
|
||||||
|
|
||||||
return io
|
return io
|
||||||
.use(function (socket: any, next: any) {
|
.use(function (socket: any, next: any) {
|
||||||
console.log("authenticating user...");
|
console.log("authenticating user...");
|
||||||
@@ -163,6 +167,9 @@ export default function InitializeWs(io: any) {
|
|||||||
// notify everyone of this disconnection
|
// notify everyone of this disconnection
|
||||||
|
|
||||||
console.log("user disconnected");
|
console.log("user disconnected");
|
||||||
|
console.log(
|
||||||
|
`list of sockets mappings in memory: ${socketIdsToUserIds}`
|
||||||
|
);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -13,32 +13,6 @@ import NirvanaHeader from "../../components/header/index";
|
|||||||
import NirvanaTerminal from "../terminal";
|
import NirvanaTerminal from "../terminal";
|
||||||
import Overlay from "../overlay";
|
import Overlay from "../overlay";
|
||||||
|
|
||||||
export interface ILineDetails {
|
|
||||||
lineId: string;
|
|
||||||
name: string;
|
|
||||||
|
|
||||||
profilePictures: string[];
|
|
||||||
numberMembers: number;
|
|
||||||
|
|
||||||
isUserToggleTunedIn: boolean;
|
|
||||||
|
|
||||||
isUserBroadcastingHere: boolean;
|
|
||||||
isSomeoneElseBroadcastingHere: boolean;
|
|
||||||
streamImages: string[];
|
|
||||||
|
|
||||||
audioBlocks: {
|
|
||||||
creatorProfilePicture: string;
|
|
||||||
creatorName: string;
|
|
||||||
lengthOfClip: number;
|
|
||||||
relativeTimeAgo: string;
|
|
||||||
}[];
|
|
||||||
timeAgo: string;
|
|
||||||
|
|
||||||
hasNewActivity: boolean;
|
|
||||||
|
|
||||||
profilePicsLiveBroadcasters?: string[];
|
|
||||||
}
|
|
||||||
|
|
||||||
export default function NirvanaRouter() {
|
export default function NirvanaRouter() {
|
||||||
const [selectedLineId, setSelectedLineId] = useRecoilState($selectedLineId);
|
const [selectedLineId, setSelectedLineId] = useRecoilState($selectedLineId);
|
||||||
const [desktopMode, setDesktopMode] = useRecoilState($desktopMode);
|
const [desktopMode, setDesktopMode] = useRecoilState($desktopMode);
|
||||||
|
|||||||
@@ -3,7 +3,6 @@ import { GlobalHotKeys, KeyMap } from "react-hotkeys";
|
|||||||
import { useCallback, useMemo } from "react";
|
import { useCallback, useMemo } from "react";
|
||||||
|
|
||||||
import { $selectedLineId } from "../../../controller/recoil";
|
import { $selectedLineId } from "../../../controller/recoil";
|
||||||
import { ILineDetails } from "../../router";
|
|
||||||
import LineIcon from "../../../components/lines/lineIcon/index";
|
import LineIcon from "../../../components/lines/lineIcon/index";
|
||||||
import { LineMemberState } from "@nirvana/core/models/line.model";
|
import { LineMemberState } from "@nirvana/core/models/line.model";
|
||||||
import MasterLineData from "@nirvana/core/models/masterLineData.model";
|
import MasterLineData from "@nirvana/core/models/masterLineData.model";
|
||||||
@@ -11,22 +10,11 @@ import { Tooltip } from "antd";
|
|||||||
import { useLineDataProvider } from "../../../controller/lineDataProvider";
|
import { useLineDataProvider } from "../../../controller/lineDataProvider";
|
||||||
import { useRecoilState } from "recoil";
|
import { useRecoilState } from "recoil";
|
||||||
|
|
||||||
export default function LineDetailsTerminal() {
|
export default function LineDetailsTerminal({
|
||||||
const [selectedLineId, setSelectedLineId] = useRecoilState($selectedLineId);
|
selectedLine,
|
||||||
|
}: {
|
||||||
const { linesMap } = useLineDataProvider();
|
selectedLine: MasterLineData;
|
||||||
|
}) {
|
||||||
const selectedLine: MasterLineData | undefined = useMemo(() => {
|
|
||||||
if (!selectedLineId) return undefined;
|
|
||||||
|
|
||||||
// find the line from the data provider
|
|
||||||
if (linesMap[selectedLineId]) {
|
|
||||||
return linesMap[selectedLineId];
|
|
||||||
}
|
|
||||||
|
|
||||||
return undefined;
|
|
||||||
}, [selectedLineId, linesMap]);
|
|
||||||
|
|
||||||
const isUserToggleTuned = useMemo(
|
const isUserToggleTuned = useMemo(
|
||||||
() => selectedLine?.currentUserMember?.state === LineMemberState.TUNED,
|
() => selectedLine?.currentUserMember?.state === LineMemberState.TUNED,
|
||||||
[selectedLine]
|
[selectedLine]
|
||||||
|
|||||||
@@ -6,7 +6,6 @@ import { useRecoilState, useSetRecoilState } from "recoil";
|
|||||||
|
|
||||||
import { FaPlus } from "react-icons/fa";
|
import { FaPlus } from "react-icons/fa";
|
||||||
import { FiActivity } from "react-icons/fi";
|
import { FiActivity } from "react-icons/fi";
|
||||||
import { ILineDetails } from "../router";
|
|
||||||
import IconButton from "../../components/Button/IconButton/index";
|
import IconButton from "../../components/Button/IconButton/index";
|
||||||
import LineDetailsTerminal from "./details";
|
import LineDetailsTerminal from "./details";
|
||||||
import { LineMemberState } from "@nirvana/core/models/line.model";
|
import { LineMemberState } from "@nirvana/core/models/line.model";
|
||||||
@@ -99,6 +98,17 @@ export default function NirvanaTerminal() {
|
|||||||
[selectedLineId]
|
[selectedLineId]
|
||||||
);
|
);
|
||||||
|
|
||||||
|
const selectedLine: MasterLineData | undefined = useMemo(() => {
|
||||||
|
if (!selectedLineId) return undefined;
|
||||||
|
|
||||||
|
// find the line from the data provider
|
||||||
|
if (linesMap[selectedLineId]) {
|
||||||
|
return linesMap[selectedLineId];
|
||||||
|
}
|
||||||
|
|
||||||
|
return undefined;
|
||||||
|
}, [selectedLineId, linesMap]);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
<GlobalHotKeys handlers={handlers} keyMap={keyMap} allowChanges />
|
<GlobalHotKeys handlers={handlers} keyMap={keyMap} allowChanges />
|
||||||
@@ -169,8 +179,8 @@ export default function NirvanaTerminal() {
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{desktopMode === "terminalDetails" && selectedLineId && (
|
{desktopMode === "terminalDetails" && selectedLine && (
|
||||||
<LineDetailsTerminal />
|
<LineDetailsTerminal selectedLine={selectedLine} />
|
||||||
)}
|
)}
|
||||||
</div>
|
</div>
|
||||||
</>
|
</>
|
||||||
|
|||||||
Reference in New Issue
Block a user