diff --git a/src/lib/Others/AlertComp.svelte b/src/lib/Others/AlertComp.svelte index 918fed71..41af784a 100644 --- a/src/lib/Others/AlertComp.svelte +++ b/src/lib/Others/AlertComp.svelte @@ -69,7 +69,11 @@ onclick }:Props = $props() - let hypaV3Resummarizing = $state(false) + let hypaV3IsResummarizing = $state(false) + let hypaV3ExpandedChatMemo = $state<{summaryChatMemos: string[], summaryChatMemo: string}>({ + summaryChatMemos: [], + summaryChatMemo: "" + }) { @@ -325,19 +329,24 @@

HypaV3 Data

-
+ +
+
- +
Connected Messages ({summary.chatMemos.length}) -
- {#each summary.chatMemos as chatMemo} -
{ - const char = DBState.db.characters[$selectedCharID] - const chat = char.chats[DBState.db.characters[$selectedCharID].chatPage] - const firstMessage = chat.fmIndex === -1 ? char.firstMessage : char.alternateGreetings?.[chat.fmIndex ?? 0] - const message = chatMemo == null ? firstMessage : chat.message.find(m => m.chatId === chatMemo)?.data - return message ? (message.length > 100 ? message.slice(0, 100).trim() + "..." : message.trim()) : "Message not found" - })()} - > - {chatMemo == null ? "First message" : chatMemo} +
+ +
+ {#each summary.chatMemos as chatMemo} + + {/each} +
+ + + {#if hypaV3ExpandedChatMemo.summaryChatMemos === summary.chatMemos && hypaV3ExpandedChatMemo.summaryChatMemo !== ""} +
+
+ {(() => { + const char = DBState.db.characters[$selectedCharID] + const chat = char.chats[DBState.db.characters[$selectedCharID].chatPage] + const firstMessage = chat.fmIndex === -1 ? char.firstMessage : char.alternateGreetings?.[chat.fmIndex ?? 0] + const targetMessage = hypaV3ExpandedChatMemo.summaryChatMemo == null ? { role: "char", data: firstMessage } : chat.message.find(m => m.chatId === hypaV3ExpandedChatMemo.summaryChatMemo) + + if (targetMessage) { + const displayRole = targetMessage.role === "char" ? char.name : targetMessage.role + return `${displayRole}: ${targetMessage.data}` + } + + return "Message not found" + })()} +
- {/each} + {/if}