Skip to content

Commit a7de372

Browse files
committed
refactor(AssistantsRoute): updates from danny-avila#1217
1 parent c954f02 commit a7de372

File tree

1 file changed

+15
-9
lines changed

1 file changed

+15
-9
lines changed

client/src/routes/AssistantsRoute.tsx

Lines changed: 15 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,37 @@
11
import { useEffect, useRef } from 'react';
22
import { useParams } from 'react-router-dom';
3-
import { useGetConvoIdQuery } from 'librechat-data-provider/react-query';
3+
import { useGetConvoIdQuery, useGetModelsQuery } from 'librechat-data-provider/react-query';
44
import AssistantsView from '~/components/Chat/AssistantsView';
55
import useAuthRedirect from './useAuthRedirect';
6-
import { useSetStorage } from '~/hooks';
6+
import { useNewConvo } from '~/hooks';
77
import store from '~/store';
88

9-
export default function ChatRoute() {
9+
export default function AssistantsRoute() {
1010
const index = 0;
11-
const setStorage = useSetStorage();
1211
const { conversationId } = useParams();
13-
const { conversation, setConversation } = store.useCreateConversationAtom(index);
12+
const { conversation } = store.useCreateConversationAtom(index);
1413
const { isAuthenticated } = useAuthRedirect();
14+
const { newConversation } = useNewConvo();
1515
const hasSetConversation = useRef(false);
1616

17+
const modelsQuery = useGetModelsQuery({ enabled: isAuthenticated });
1718
const initialConvoQuery = useGetConvoIdQuery(conversationId ?? '', {
1819
enabled: isAuthenticated && conversationId !== 'new',
1920
});
2021

2122
useEffect(() => {
22-
if (initialConvoQuery.data && !hasSetConversation.current) {
23-
setStorage(initialConvoQuery.data);
24-
setConversation(initialConvoQuery.data);
23+
if (conversationId === 'new' && modelsQuery.data && !hasSetConversation.current) {
24+
newConversation({ modelsData: modelsQuery.data });
25+
hasSetConversation.current = true;
26+
} else if (initialConvoQuery.data && modelsQuery.data && !hasSetConversation.current) {
27+
newConversation({
28+
template: initialConvoQuery.data,
29+
modelsData: modelsQuery.data,
30+
});
2531
hasSetConversation.current = true;
2632
}
2733
// eslint-disable-next-line react-hooks/exhaustive-deps
28-
}, [initialConvoQuery.data]);
34+
}, [initialConvoQuery.data, modelsQuery.data]);
2935

3036
if (!isAuthenticated) {
3137
return null;

0 commit comments

Comments
 (0)