|
|
@@ -29,7 +29,7 @@ import {
|
|
|
import { useAiAssistantSidebar } from '../../../stores/ai-assistant';
|
|
|
import { useSWRxThreads } from '../../../stores/thread';
|
|
|
|
|
|
-import { MessageCard, type MessageCardRole } from './MessageCard';
|
|
|
+import { MessageCard } from './MessageCard';
|
|
|
import { ResizableTextarea } from './ResizableTextArea';
|
|
|
|
|
|
import styles from './AiAssistantSidebar.module.scss';
|
|
|
@@ -78,7 +78,7 @@ const AiAssistantSidebarSubstance: React.FC<AiAssistantSidebarSubstanceProps> =
|
|
|
|
|
|
// Views
|
|
|
initialView: initialViewForKnowledgeAssistant,
|
|
|
- generateMessageCard: generateMessageCardForKnowledgeAssistant,
|
|
|
+ // generateMessageCard: generateMessageCardForKnowledgeAssistant,
|
|
|
generateModeSwitchesDropdown: generateModeSwitchesDropdownForKnowledgeAssistant,
|
|
|
headerIcon: headerIconForKnowledgeAssistant,
|
|
|
headerText: headerTextForKnowledgeAssistant,
|
|
|
@@ -92,11 +92,14 @@ const AiAssistantSidebarSubstance: React.FC<AiAssistantSidebarSubstanceProps> =
|
|
|
form: formForEditorAssistant,
|
|
|
resetForm: resetFormEditorAssistant,
|
|
|
isTextSelected,
|
|
|
- isGeneratingEditorText,
|
|
|
|
|
|
// Views
|
|
|
generateInitialView: generateInitialViewForEditorAssistant,
|
|
|
- generateMessageCard: generateMessageCardForEditorAssistant,
|
|
|
+ generatingEditorTextLabel,
|
|
|
+ generateActionButtons,
|
|
|
+ // generateMessageCard: generateMessageCardForEditorAssistant,
|
|
|
+ // generatingEditorTextForMessageCardAdditionaltem,
|
|
|
+ // actionButtonsForMessageCardAdditionaltem,
|
|
|
headerIcon: headerIconForEditorAssistant,
|
|
|
headerText: headerTextForEditorAssistant,
|
|
|
placeHolder: placeHolderForEditorAssistant,
|
|
|
@@ -355,18 +358,25 @@ const AiAssistantSidebarSubstance: React.FC<AiAssistantSidebarSubstanceProps> =
|
|
|
return initialViewForKnowledgeAssistant;
|
|
|
}, [generateInitialViewForEditorAssistant, initialViewForKnowledgeAssistant, isEditorAssistant, submit]);
|
|
|
|
|
|
- const messageCard = useCallback(
|
|
|
- (role: MessageCardRole, children: string, messageId?: string, messageLogs?: MessageLog[], generatingAnswerMessage?: MessageLog) => {
|
|
|
- if (isEditorAssistant) {
|
|
|
- if (messageId == null || messageLogs == null) {
|
|
|
- return <></>;
|
|
|
- }
|
|
|
- return generateMessageCardForEditorAssistant(role, children, messageId, messageLogs, generatingAnswerMessage);
|
|
|
+ const messageCardAdditionaltemForGeneratingMessage = useMemo(() => {
|
|
|
+ if (isEditorAssistant) {
|
|
|
+ return generatingEditorTextLabel;
|
|
|
+ }
|
|
|
+
|
|
|
+ return <></>;
|
|
|
+ }, [generatingEditorTextLabel, isEditorAssistant]);
|
|
|
+
|
|
|
+
|
|
|
+ const messageCardAdditionaltemForGeneratedMessage = useCallback((messageId?: string) => {
|
|
|
+ if (isEditorAssistant) {
|
|
|
+ if (messageId == null || messageLogs == null) {
|
|
|
+ return <></>;
|
|
|
}
|
|
|
+ return generateActionButtons(messageId, messageLogs, generatingAnswerMessage);
|
|
|
+ }
|
|
|
|
|
|
- return generateMessageCardForKnowledgeAssistant(role, children);
|
|
|
- }, [generateMessageCardForEditorAssistant, generateMessageCardForKnowledgeAssistant, isEditorAssistant],
|
|
|
- );
|
|
|
+ return undefined;
|
|
|
+ }, [generateActionButtons, generatingAnswerMessage, isEditorAssistant, messageLogs]);
|
|
|
|
|
|
return (
|
|
|
<>
|
|
|
@@ -391,13 +401,18 @@ const AiAssistantSidebarSubstance: React.FC<AiAssistantSidebarSubstanceProps> =
|
|
|
<div className="vstack gap-4 pb-2">
|
|
|
{ messageLogs.map(message => (
|
|
|
<>
|
|
|
- {messageCard(message.isUserMessage ? 'user' : 'assistant', message.content, message.id, messageLogs, generatingAnswerMessage)}
|
|
|
+ <MessageCard
|
|
|
+ role={message.isUserMessage ? 'user' : 'assistant'}
|
|
|
+ additionaltem={messageCardAdditionaltemForGeneratedMessage(message.id)}
|
|
|
+ >
|
|
|
+ {message.content}
|
|
|
+ </MessageCard>
|
|
|
</>
|
|
|
)) }
|
|
|
{ generatingAnswerMessage != null && (
|
|
|
<MessageCard
|
|
|
- isGeneratingEditorText={isGeneratingEditorText}
|
|
|
role="assistant"
|
|
|
+ additionaltem={messageCardAdditionaltemForGeneratingMessage}
|
|
|
>
|
|
|
{generatingAnswerMessage.content}
|
|
|
</MessageCard>
|
|
|
@@ -477,7 +492,6 @@ const AiAssistantSidebarSubstance: React.FC<AiAssistantSidebarSubstanceProps> =
|
|
|
</Collapse>
|
|
|
</div>
|
|
|
)}
|
|
|
-
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|