LibreChat/src/App.jsx

36 lines
1.2 KiB
React
Raw Normal View History

2023-02-07 09:41:54 -05:00
import React from 'react';
import { useSelector } from 'react-redux';
import Messages from './components/main/Messages';
import TextChat from './components/main/TextChat';
2023-02-06 13:27:28 -05:00
import Nav from './components/Nav';
import MobileNav from './components/Nav/MobileNav';
import { swr } from './utils/fetchers';
import useDidMountEffect from './hooks/useDidMountEffect';
2023-02-04 19:19:53 -05:00
const App = () => {
const { messages } = useSelector((state) => state.messages);
const { conversationId } = useSelector((state) => state.convo);
const { data, error, isLoading, mutate } = swr('http://localhost:3050/convos');
useDidMountEffect(() => mutate(), [conversationId]);
2023-02-04 19:19:53 -05:00
return (
<div className="flex h-screen">
2023-02-07 09:41:54 -05:00
<Nav conversations={data} />
2023-02-06 13:27:28 -05:00
<div className="flex h-full w-full flex-1 flex-col bg-gray-50 md:pl-[260px]">
<div className="transition-width relative flex h-full w-full flex-1 flex-col items-stretch overflow-hidden">
<div className="h-full dark:bg-gray-800">
<MobileNav />
<Messages messages={messages} />
<TextChat
messages={messages}
reloadConvos={mutate}
/>
</div>
</div>
2023-02-04 19:19:53 -05:00
</div>
</div>
);
};
export default App;