Skip to content
Snippets Groups Projects
Unverified Commit 72b71952 authored by Thuc Pham's avatar Thuc Pham Committed by GitHub
Browse files

fix: dont use props as state in chat suggestion component (#267)

parent 2f8feabc
No related branches found
No related tags found
No related merge requests found
---
"create-llama": patch
---
fix: dont use props as state in chat suggestion component
import { useState } from "react";
import { ChatHandler, SuggestedQuestionsData } from "..";
export function SuggestedQuestions({
questions,
append,
isLastMessage,
}: {
questions: SuggestedQuestionsData;
append: Pick<ChatHandler, "append">["append"];
isLastMessage: boolean;
}) {
const [showQuestions, setShowQuestions] = useState(questions.length > 0);
const showQuestions = isLastMessage && questions.length > 0;
return (
showQuestions &&
append !== undefined && (
......@@ -19,7 +19,6 @@ export function SuggestedQuestions({
key={index}
onClick={() => {
append({ role: "user", content: question });
setShowQuestions(false);
}}
className="text-sm italic hover:underline cursor-pointer"
>
......
......@@ -34,10 +34,12 @@ function ChatMessageContent({
message,
isLoading,
append,
isLastMessage,
}: {
message: Message;
isLoading: boolean;
append: Pick<ChatHandler, "append">["append"];
isLastMessage: boolean;
}) {
const annotations = message.annotations as MessageAnnotation[] | undefined;
if (!annotations?.length) return <Markdown content={message.content} />;
......@@ -102,6 +104,7 @@ function ChatMessageContent({
<SuggestedQuestions
questions={suggestedQuestionsData[0]}
append={append}
isLastMessage={isLastMessage}
/>
) : null,
},
......@@ -122,10 +125,12 @@ export default function ChatMessage({
chatMessage,
isLoading,
append,
isLastMessage,
}: {
chatMessage: Message;
isLoading: boolean;
append: Pick<ChatHandler, "append">["append"];
isLastMessage: boolean;
}) {
const { isCopied, copyToClipboard } = useCopyToClipboard({ timeout: 2000 });
return (
......@@ -136,6 +141,7 @@ export default function ChatMessage({
message={chatMessage}
isLoading={isLoading}
append={append}
isLastMessage={isLastMessage}
/>
<Button
onClick={() => copyToClipboard(chatMessage.content)}
......
......@@ -69,6 +69,7 @@ export default function ChatMessages(
chatMessage={m}
isLoading={isLoadingMessage}
append={props.append!}
isLastMessage={i === messageLength - 1}
/>
);
})}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment