Skip to content

Commit 03f0134

Browse files
author
Brian Genisio
committed
Add the ability to use presets as a query parameter
1 parent aff8d35 commit 03f0134

File tree

1 file changed

+14
-2
lines changed

1 file changed

+14
-2
lines changed

client/src/components/Chat/ChatView.tsx

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
import { memo, useCallback } from 'react';
1+
import { memo, useCallback, useEffect } from 'react';
22
import { useRecoilValue } from 'recoil';
33
import { useForm } from 'react-hook-form';
44
import { useParams, useSearchParams } from 'react-router-dom';
55
import { Constants } from 'librechat-data-provider';
66
import type { TMessage } from 'librechat-data-provider';
77
import type { ChatFormValues } from '~/common';
88
import { ChatContext, AddedChatContext, useFileMapContext, ChatFormProvider } from '~/Providers';
9-
import { useChatHelpers, useAddedResponse, useSSE } from '~/hooks';
9+
import { useChatHelpers, useAddedResponse, useSSE, usePresets } from '~/hooks';
1010
import ConversationStarters from './Input/ConversationStarters';
1111
//import { useGetMessagesByConvoId } from 'librechat-data-provider/react-query';
1212
import { useGetMessagesByConvoId } from '~/data-provider';
@@ -36,10 +36,22 @@ function ChatView({ index = 0 }: { index?: number }) {
3636
const rootSubmission = useRecoilValue(store.submissionByIndex(index));
3737
const addedSubmission = useRecoilValue(store.submissionByIndex(index + 1));
3838
const centerFormOnLanding = useRecoilValue(store.centerFormOnLanding);
39+
const {presetsQuery, onSelectPreset} = usePresets();
3940

4041
const fileMap = useFileMapContext();
4142
const initialMessage = searchParams.get('initialMessage');
43+
const usePresetId = searchParams.get('usePresetId');
4244

45+
useEffect(() => {
46+
if (usePresetId) {
47+
const preset = (presetsQuery.data ?? []).find(p => p.presetId == usePresetId)
48+
if (preset) {
49+
onSelectPreset(preset);
50+
searchParams.delete('usePresetId');
51+
}
52+
}
53+
}, [usePresetId, presetsQuery.data, onSelectPreset])
54+
4355
const { data: messagesTree = null, isLoading } = useGetMessagesByConvoId(conversationId ?? '', {
4456
select: useCallback(
4557
(data: TMessage[]) => {

0 commit comments

Comments
 (0)