tweak(ui): refine user message hover meta
Moves the interrupted state into the user message hover metadata and updates the copy tooltip to 'Copy message'.
This commit is contained in:
@@ -562,7 +562,13 @@ export function UserMessageDisplay(props: { message: UserMessage; parts: PartTyp
|
||||
|
||||
const meta = createMemo(() => {
|
||||
const agent = props.message.agent
|
||||
const items = [agent ? agent[0]?.toUpperCase() + agent.slice(1) : "", provider(), model(), stamp()]
|
||||
const items = [
|
||||
agent ? agent[0]?.toUpperCase() + agent.slice(1) : "",
|
||||
provider(),
|
||||
model(),
|
||||
stamp(),
|
||||
props.interrupted ? i18n.t("ui.message.interrupted") : "",
|
||||
]
|
||||
return items.filter((x) => !!x).join(" \u00B7 ")
|
||||
})
|
||||
|
||||
@@ -618,18 +624,13 @@ export function UserMessageDisplay(props: { message: UserMessage; parts: PartTyp
|
||||
<HighlightedText text={text()} references={inlineFiles()} agents={agents()} />
|
||||
</div>
|
||||
<div data-slot="user-message-copy-wrapper" data-interrupted={props.interrupted ? "" : undefined}>
|
||||
<Show when={props.interrupted}>
|
||||
<span data-slot="user-message-interrupted" class="text-13-regular text-text-weak cursor-default">
|
||||
{i18n.t("ui.message.interrupted")}
|
||||
</span>
|
||||
</Show>
|
||||
<Show when={meta()}>
|
||||
<span data-slot="user-message-meta" class="text-12-regular text-text-weak cursor-default">
|
||||
{meta()}
|
||||
</span>
|
||||
</Show>
|
||||
<Tooltip
|
||||
value={copied() ? i18n.t("ui.message.copied") : i18n.t("ui.message.copy")}
|
||||
value={copied() ? i18n.t("ui.message.copied") : i18n.t("ui.message.copyMessage")}
|
||||
placement="top"
|
||||
gutter={4}
|
||||
>
|
||||
@@ -642,7 +643,7 @@ export function UserMessageDisplay(props: { message: UserMessage; parts: PartTyp
|
||||
event.stopPropagation()
|
||||
handleCopy()
|
||||
}}
|
||||
aria-label={copied() ? i18n.t("ui.message.copied") : i18n.t("ui.message.copy")}
|
||||
aria-label={copied() ? i18n.t("ui.message.copied") : i18n.t("ui.message.copyMessage")}
|
||||
/>
|
||||
</Tooltip>
|
||||
</div>
|
||||
|
||||
@@ -97,6 +97,7 @@ export const dict = {
|
||||
"ui.message.expand": "توسيع الرسالة",
|
||||
"ui.message.collapse": "طي الرسالة",
|
||||
"ui.message.copy": "نسخ",
|
||||
"ui.message.copyMessage": "نسخ الرسالة",
|
||||
"ui.message.copied": "تم النسخ!",
|
||||
"ui.message.interrupted": "تمت المقاطعة",
|
||||
"ui.message.attachment.alt": "مرفق",
|
||||
|
||||
@@ -97,6 +97,7 @@ export const dict = {
|
||||
"ui.message.expand": "Expandir mensagem",
|
||||
"ui.message.collapse": "Recolher mensagem",
|
||||
"ui.message.copy": "Copiar",
|
||||
"ui.message.copyMessage": "Copiar mensagem",
|
||||
"ui.message.copied": "Copiado!",
|
||||
"ui.message.interrupted": "Interrompido",
|
||||
"ui.message.attachment.alt": "anexo",
|
||||
|
||||
@@ -101,6 +101,7 @@ export const dict = {
|
||||
"ui.message.expand": "Proširi poruku",
|
||||
"ui.message.collapse": "Sažmi poruku",
|
||||
"ui.message.copy": "Kopiraj",
|
||||
"ui.message.copyMessage": "Kopiraj poruku",
|
||||
"ui.message.copied": "Kopirano!",
|
||||
"ui.message.interrupted": "Prekinuto",
|
||||
"ui.message.attachment.alt": "prilog",
|
||||
|
||||
@@ -96,6 +96,7 @@ export const dict = {
|
||||
"ui.message.expand": "Udvid besked",
|
||||
"ui.message.collapse": "Skjul besked",
|
||||
"ui.message.copy": "Kopier",
|
||||
"ui.message.copyMessage": "Kopier besked",
|
||||
"ui.message.copied": "Kopieret!",
|
||||
"ui.message.interrupted": "Afbrudt",
|
||||
"ui.message.attachment.alt": "vedhæftning",
|
||||
|
||||
@@ -100,6 +100,7 @@ export const dict = {
|
||||
"ui.message.expand": "Nachricht erweitern",
|
||||
"ui.message.collapse": "Nachricht reduzieren",
|
||||
"ui.message.copy": "Kopieren",
|
||||
"ui.message.copyMessage": "Nachricht kopieren",
|
||||
"ui.message.copied": "Kopiert!",
|
||||
"ui.message.interrupted": "Unterbrochen",
|
||||
"ui.message.attachment.alt": "Anhang",
|
||||
|
||||
@@ -97,6 +97,7 @@ export const dict = {
|
||||
"ui.message.expand": "Expand message",
|
||||
"ui.message.collapse": "Collapse message",
|
||||
"ui.message.copy": "Copy",
|
||||
"ui.message.copyMessage": "Copy message",
|
||||
"ui.message.copied": "Copied",
|
||||
"ui.message.interrupted": "Interrupted",
|
||||
"ui.message.attachment.alt": "attachment",
|
||||
|
||||
@@ -97,6 +97,7 @@ export const dict = {
|
||||
"ui.message.expand": "Expandir mensaje",
|
||||
"ui.message.collapse": "Colapsar mensaje",
|
||||
"ui.message.copy": "Copiar",
|
||||
"ui.message.copyMessage": "Copiar mensaje",
|
||||
"ui.message.copied": "¡Copiado!",
|
||||
"ui.message.interrupted": "Interrumpido",
|
||||
"ui.message.attachment.alt": "adjunto",
|
||||
|
||||
@@ -97,6 +97,7 @@ export const dict = {
|
||||
"ui.message.expand": "Développer le message",
|
||||
"ui.message.collapse": "Réduire le message",
|
||||
"ui.message.copy": "Copier",
|
||||
"ui.message.copyMessage": "Copier le message",
|
||||
"ui.message.copied": "Copié !",
|
||||
"ui.message.interrupted": "Interrompu",
|
||||
"ui.message.attachment.alt": "pièce jointe",
|
||||
|
||||
@@ -96,6 +96,7 @@ export const dict = {
|
||||
"ui.message.expand": "メッセージを展開",
|
||||
"ui.message.collapse": "メッセージを折りたたむ",
|
||||
"ui.message.copy": "コピー",
|
||||
"ui.message.copyMessage": "メッセージをコピー",
|
||||
"ui.message.copied": "コピーしました!",
|
||||
"ui.message.interrupted": "中断",
|
||||
"ui.message.attachment.alt": "添付ファイル",
|
||||
|
||||
@@ -97,6 +97,7 @@ export const dict = {
|
||||
"ui.message.expand": "메시지 펼치기",
|
||||
"ui.message.collapse": "메시지 접기",
|
||||
"ui.message.copy": "복사",
|
||||
"ui.message.copyMessage": "메시지 복사",
|
||||
"ui.message.copied": "복사됨!",
|
||||
"ui.message.interrupted": "중단됨",
|
||||
"ui.message.attachment.alt": "첨부 파일",
|
||||
|
||||
@@ -100,6 +100,7 @@ export const dict: Record<Keys, string> = {
|
||||
"ui.message.expand": "Utvid melding",
|
||||
"ui.message.collapse": "Skjul melding",
|
||||
"ui.message.copy": "Kopier",
|
||||
"ui.message.copyMessage": "Kopier melding",
|
||||
"ui.message.copied": "Kopiert!",
|
||||
"ui.message.interrupted": "Avbrutt",
|
||||
"ui.message.attachment.alt": "vedlegg",
|
||||
|
||||
@@ -96,6 +96,7 @@ export const dict = {
|
||||
"ui.message.expand": "Rozwiń wiadomość",
|
||||
"ui.message.collapse": "Zwiń wiadomość",
|
||||
"ui.message.copy": "Kopiuj",
|
||||
"ui.message.copyMessage": "Kopiuj wiadomość",
|
||||
"ui.message.copied": "Skopiowano!",
|
||||
"ui.message.interrupted": "Przerwano",
|
||||
"ui.message.attachment.alt": "załącznik",
|
||||
|
||||
@@ -96,6 +96,7 @@ export const dict = {
|
||||
"ui.message.expand": "Развернуть сообщение",
|
||||
"ui.message.collapse": "Свернуть сообщение",
|
||||
"ui.message.copy": "Копировать",
|
||||
"ui.message.copyMessage": "Копировать сообщение",
|
||||
"ui.message.copied": "Скопировано!",
|
||||
"ui.message.interrupted": "Прервано",
|
||||
"ui.message.attachment.alt": "вложение",
|
||||
|
||||
@@ -97,6 +97,7 @@ export const dict = {
|
||||
"ui.message.expand": "ขยายข้อความ",
|
||||
"ui.message.collapse": "ย่อข้อความ",
|
||||
"ui.message.copy": "คัดลอก",
|
||||
"ui.message.copyMessage": "คัดลอกข้อความ",
|
||||
"ui.message.copied": "คัดลอกแล้ว!",
|
||||
"ui.message.interrupted": "ถูกขัดจังหวะ",
|
||||
"ui.message.attachment.alt": "ไฟล์แนบ",
|
||||
|
||||
@@ -101,6 +101,7 @@ export const dict = {
|
||||
"ui.message.expand": "展开消息",
|
||||
"ui.message.collapse": "收起消息",
|
||||
"ui.message.copy": "复制",
|
||||
"ui.message.copyMessage": "复制消息",
|
||||
"ui.message.copied": "已复制!",
|
||||
"ui.message.interrupted": "已中断",
|
||||
"ui.message.attachment.alt": "附件",
|
||||
|
||||
@@ -101,6 +101,7 @@ export const dict = {
|
||||
"ui.message.expand": "展開訊息",
|
||||
"ui.message.collapse": "收合訊息",
|
||||
"ui.message.copy": "複製",
|
||||
"ui.message.copyMessage": "複製訊息",
|
||||
"ui.message.copied": "已複製!",
|
||||
"ui.message.interrupted": "已中斷",
|
||||
"ui.message.attachment.alt": "附件",
|
||||
|
||||
Reference in New Issue
Block a user