feat: copy structured chat share package

This commit is contained in:
732642856
2026-07-18 06:23:00 +08:00
parent bbcec4d86d
commit bf84757eba
2 changed files with 13 additions and 0 deletions
+11
View File
@@ -1181,10 +1181,21 @@ export default function Home() {
}
async function shareSession(session: ChatSession) {
const sharePayload = {
share_payload_version: 1,
exported_at: new Date().toISOString(),
title: session.title,
theme: session.theme,
message_count: session.messages.length,
messages: session.messages.map((message) => ({ role: message.role, text: message.text })),
};
const transcript = [
`Jyotisha 对话:${session.title}`,
"",
...session.messages.map((message) => `${message.role === "user" ? "我" : "Jyotisha"}${message.text}`),
"",
"---- JSON 分享包 ----",
JSON.stringify(sharePayload, null, 2),
].join("\n");
try {
await navigator.clipboard.writeText(transcript);
@@ -13,6 +13,8 @@ def test_chat_history_management_actions_are_exposed() -> None:
"toggleArchivedSession",
"showArchivedSessions",
"shareSession",
"share_payload_version",
"messages.map",
"onContextMenu",
"session-menu-trigger",
'role="menu"',