mirror of
https://github.com/danny-avila/LibreChat.git
synced 2026-02-17 07:58:08 +01:00
* chore: bump vite, vitejs/plugin-react, mark client package as esm, move react-query as a peer dep in data-provider * chore: import changes due to new data-provider export strategy, also fix type imports where applicable * chore: export react-query services as separate to avoid react dependencies in /api/ * chore: suppress sourcemap warnings and polyfill node:path which is used by filenamify TODO: replace filenamify with an alternative and REMOVE polyfill * chore: /api/ changes to support `librechat-data-provider` * refactor: rewrite Dockerfile.multi in light of /api/ changes to support `librechat-data-provider` * chore: remove volume mapping to node_modules directories in default compose file * chore: remove schemas from /api/ as is no longer needed with use of `librechat-data-provider` * fix(ci): jest `librechat-data-provider/react-query` module resolution
41 lines
1.2 KiB
TypeScript
41 lines
1.2 KiB
TypeScript
import { useParams } from 'react-router-dom';
|
|
import { useGetMessagesByConvoId } from 'librechat-data-provider/react-query';
|
|
import ChatView from '~/components/Chat/SingleChatView';
|
|
import useAuthRedirect from './useAuthRedirect';
|
|
import { buildTree } from '~/utils';
|
|
import store from '~/store';
|
|
|
|
export default function AssistantsRoute() {
|
|
const index = 0;
|
|
const { conversationId } = useParams();
|
|
const { conversation } = store.useCreateConversationAtom(index);
|
|
|
|
const { data: messagesTree = null } = useGetMessagesByConvoId(conversationId ?? '', {
|
|
enabled: !!(conversationId && conversationId !== 'new'),
|
|
select: (data) => {
|
|
const dataTree = buildTree(data, false);
|
|
return dataTree?.length === 0 ? null : dataTree ?? null;
|
|
},
|
|
});
|
|
|
|
const { isAuthenticated } = useAuthRedirect();
|
|
|
|
if (!isAuthenticated) {
|
|
return null;
|
|
}
|
|
|
|
// if not a conversation
|
|
if (conversation?.conversationId === 'search') {
|
|
return null;
|
|
}
|
|
// if conversationId not match
|
|
if (conversation?.conversationId !== conversationId && !conversation) {
|
|
return null;
|
|
}
|
|
// if conversationId is null
|
|
if (!conversationId) {
|
|
return null;
|
|
}
|
|
|
|
return <ChatView index={index} messagesTree={messagesTree} />;
|
|
}
|