import React, { useLayoutEffect } from "react";
import Conversation from "../components/conversation";
import { Box } from "@mui/material";
import { useParams, Navigate } from "react-router-dom";
import { useId, useMenu } from "../components/MenuProvider";
import { useIsSmallScreen } from "../components/ContextProvider";
import isInteger from "is-sn-integer";
import { ShareProvider } from "../components/conversation/ShareProvider";
import ConversationProvider from "../components/conversation/ConversationContext";
/**
* Thread Component for /thread/:id
* controls the menu and returns a Conversation
*/
export default function Thread() {
const params = useParams();
const [id, setId] = useId();
const [menu, setMenu] = useMenu();
const isSmallScreen = useIsSmallScreen();
const threadId = Number(params.id);
useLayoutEffect(() => {
!menu && !isSmallScreen && setMenu(true);
menu && isSmallScreen && setMenu(false);
id !== threadId && setId(threadId);
}, [menu, isSmallScreen, params.id, setMenu, setId, threadId, id]);
if (!isInteger(params.id)) return ;
return (
);
}