优化会话页面Agent响应时的时间显示

This commit is contained in:
xintaofei
2026-03-18 11:00:06 +08:00
parent 4aa3fafed9
commit b6956b24c4
11 changed files with 16 additions and 4 deletions

View File

@@ -282,7 +282,7 @@ export function LiveTurnStats({
useEffect(() => { useEffect(() => {
const timer = setInterval(() => { const timer = setInterval(() => {
setElapsed(Date.now() - message.startedAt) setElapsed(Date.now() - message.startedAt)
}, 100) }, 1_000)
return () => clearInterval(timer) return () => clearInterval(timer)
}, [message.startedAt]) }, [message.startedAt])
@@ -307,9 +307,11 @@ export function LiveTurnStats({
lastBlock?.type === "thinking" lastBlock?.type === "thinking"
const elapsedLabel = const elapsedLabel =
elapsed >= 60_000 elapsed >= 3_600_000
? t("elapsedMinutes", { value: (elapsed / 60_000).toFixed(1) }) ? `${t("elapsedHours", { value: Math.floor(elapsed / 3_600_000) })} ${t("elapsedMinutes", { value: Math.floor((elapsed % 3_600_000) / 60_000) })} ${t("elapsedSeconds", { value: Math.floor((elapsed % 60_000) / 1_000) })}`
: t("elapsedSeconds", { value: (elapsed / 1_000).toFixed(1) }) : elapsed >= 60_000
? `${t("elapsedMinutes", { value: Math.floor(elapsed / 60_000) })} ${t("elapsedSeconds", { value: Math.floor((elapsed % 60_000) / 1_000) })}`
: t("elapsedSeconds", { value: Math.floor(elapsed / 1_000) })
return ( return (
<div className="flex h-8 shrink-0 items-center justify-center gap-3 px-4 text-xs leading-none text-muted-foreground"> <div className="flex h-8 shrink-0 items-center justify-center gap-3 px-4 text-xs leading-none text-muted-foreground">

View File

@@ -1314,6 +1314,7 @@
"liveTurnStats": { "liveTurnStats": {
"thinking": "جارٍ التفكير...", "thinking": "جارٍ التفكير...",
"streaming": "جارٍ البث", "streaming": "جارٍ البث",
"elapsedHours": "{value}س",
"elapsedMinutes": "{value}د", "elapsedMinutes": "{value}د",
"elapsedSeconds": "{value}ث", "elapsedSeconds": "{value}ث",
"toolUseCount": "{count} أداة {count, plural, one {use} other {uses}}" "toolUseCount": "{count} أداة {count, plural, one {use} other {uses}}"

View File

@@ -1314,6 +1314,7 @@
"liveTurnStats": { "liveTurnStats": {
"thinking": "Denkt nach...", "thinking": "Denkt nach...",
"streaming": "Übertragung", "streaming": "Übertragung",
"elapsedHours": "{value} Std",
"elapsedMinutes": "{value} Min", "elapsedMinutes": "{value} Min",
"elapsedSeconds": "{value} Sek", "elapsedSeconds": "{value} Sek",
"toolUseCount": "{count} Tool {count, plural, one {use} other {uses}}" "toolUseCount": "{count} Tool {count, plural, one {use} other {uses}}"

View File

@@ -1314,6 +1314,7 @@
"liveTurnStats": { "liveTurnStats": {
"thinking": "Thinking...", "thinking": "Thinking...",
"streaming": "Streaming", "streaming": "Streaming",
"elapsedHours": "{value}h",
"elapsedMinutes": "{value}m", "elapsedMinutes": "{value}m",
"elapsedSeconds": "{value}s", "elapsedSeconds": "{value}s",
"toolUseCount": "{count} tool {count, plural, one {use} other {uses}}" "toolUseCount": "{count} tool {count, plural, one {use} other {uses}}"

View File

@@ -1314,6 +1314,7 @@
"liveTurnStats": { "liveTurnStats": {
"thinking": "Pensando...", "thinking": "Pensando...",
"streaming": "Transmitiendo", "streaming": "Transmitiendo",
"elapsedHours": "{value} h",
"elapsedMinutes": "{value} min", "elapsedMinutes": "{value} min",
"elapsedSeconds": "{value} s", "elapsedSeconds": "{value} s",
"toolUseCount": "{count} herramienta {count, plural, one {use} other {uses}}" "toolUseCount": "{count} herramienta {count, plural, one {use} other {uses}}"

View File

@@ -1314,6 +1314,7 @@
"liveTurnStats": { "liveTurnStats": {
"thinking": "Réflexion...", "thinking": "Réflexion...",
"streaming": "Diffusion", "streaming": "Diffusion",
"elapsedHours": "{value} h",
"elapsedMinutes": "{value} min", "elapsedMinutes": "{value} min",
"elapsedSeconds": "{value} s", "elapsedSeconds": "{value} s",
"toolUseCount": "{count} outil {count, plural, one {use} other {uses}}" "toolUseCount": "{count} outil {count, plural, one {use} other {uses}}"

View File

@@ -1314,6 +1314,7 @@
"liveTurnStats": { "liveTurnStats": {
"thinking": "考え中...", "thinking": "考え中...",
"streaming": "ストリーミング中", "streaming": "ストリーミング中",
"elapsedHours": "{value}時間",
"elapsedMinutes": "{value}分", "elapsedMinutes": "{value}分",
"elapsedSeconds": "{value}秒", "elapsedSeconds": "{value}秒",
"toolUseCount": "{count} 個のツール {count, plural, one {use} other {uses}}" "toolUseCount": "{count} 個のツール {count, plural, one {use} other {uses}}"

View File

@@ -1314,6 +1314,7 @@
"liveTurnStats": { "liveTurnStats": {
"thinking": "생각 중...", "thinking": "생각 중...",
"streaming": "스트리밍 중", "streaming": "스트리밍 중",
"elapsedHours": "{value}시간",
"elapsedMinutes": "{value}분", "elapsedMinutes": "{value}분",
"elapsedSeconds": "{value}초", "elapsedSeconds": "{value}초",
"toolUseCount": "{count}개 도구 {count, plural, one {use} other {uses}}" "toolUseCount": "{count}개 도구 {count, plural, one {use} other {uses}}"

View File

@@ -1314,6 +1314,7 @@
"liveTurnStats": { "liveTurnStats": {
"thinking": "Pensando...", "thinking": "Pensando...",
"streaming": "Transmitindo", "streaming": "Transmitindo",
"elapsedHours": "{value} h",
"elapsedMinutes": "{value} min", "elapsedMinutes": "{value} min",
"elapsedSeconds": "{value} s", "elapsedSeconds": "{value} s",
"toolUseCount": "{count} ferramenta {count, plural, one {use} other {uses}}" "toolUseCount": "{count} ferramenta {count, plural, one {use} other {uses}}"

View File

@@ -1314,6 +1314,7 @@
"liveTurnStats": { "liveTurnStats": {
"thinking": "思考中...", "thinking": "思考中...",
"streaming": "生成中", "streaming": "生成中",
"elapsedHours": "{value} 小时",
"elapsedMinutes": "{value} 分钟", "elapsedMinutes": "{value} 分钟",
"elapsedSeconds": "{value} 秒", "elapsedSeconds": "{value} 秒",
"toolUseCount": "{count} 个工具 {count, plural, one {use} other {uses}}" "toolUseCount": "{count} 个工具 {count, plural, one {use} other {uses}}"

View File

@@ -1314,6 +1314,7 @@
"liveTurnStats": { "liveTurnStats": {
"thinking": "思考中...", "thinking": "思考中...",
"streaming": "生成中", "streaming": "生成中",
"elapsedHours": "{value} 小時",
"elapsedMinutes": "{value} 分鐘", "elapsedMinutes": "{value} 分鐘",
"elapsedSeconds": "{value} 秒", "elapsedSeconds": "{value} 秒",
"toolUseCount": "{count} 个工具 {count, plural, one {use} other {uses}}" "toolUseCount": "{count} 个工具 {count, plural, one {use} other {uses}}"