V3.5.1 优化:项目存为参考/修复标签切换/对话独立首页/报表按日期

1. 项目一键保存为参考:项目卡片「存为参考」按钮,复制项目+任务到从参考项目中新建;
   参考列表显示来源标记,非内置可删除;内置参考受保护(ref_builtin),种子自愈补标记
2. 修复AI Worker页 大模型接口库/团队 标签点击无反应(workersTab被pageWorkers重置的bug)
3. 对话独立首页:导航改为 对话/仪表盘 并列;首页=上部仪表盘摘要(可点击跳仪表盘)+
   中下对话主体(更高面板、流式光标、每条消息带用量)
4. 成本报表新增「按日期」维度(近7/30天/全部),按天统计调用/输入/输出/缓存/成本
This commit is contained in:
2026-09-05 19:49:47 +08:00
parent c56745a8ab
commit 5428a33a0c
6 changed files with 203 additions and 40 deletions
+8
View File
@@ -277,6 +277,7 @@ code{background:var(--panel2);border:1px solid var(--border);border-radius:6px;p
/* ---------- V3.5 对话 ---------- */
.chat-card{display:flex;flex-direction:column;max-height:560px;padding:14px}
.chat-card.chat-tall{max-height:72vh;margin-top:14px}
.chat-top{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px}
.chat-title{font-size:16px;font-weight:700}
.chat-sess{display:flex;gap:6px;align-items:center}
@@ -285,6 +286,7 @@ code{background:var(--panel2);border:1px solid var(--border);border-radius:6px;p
.chat-target select{width:auto;max-width:240px}
.chat-target-label{font-size:12px;color:var(--accent);font-weight:600}
.chat-body{flex:1;min-height:180px;max-height:330px;overflow-y:auto;background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:12px}
.chat-card.chat-tall .chat-body{max-height:none}
.chat-msg{display:flex;margin-bottom:10px}
.chat-msg.user{justify-content:flex-end}
.chat-msg.ai{justify-content:flex-start;flex-direction:column;align-items:flex-start}
@@ -292,8 +294,14 @@ code{background:var(--panel2);border:1px solid var(--border);border-radius:6px;p
.chat-bubble.user{background:var(--accent);color:#fff;border-bottom-right-radius:3px}
.chat-bubble.ai{background:var(--panel2);border:1px solid var(--border);border-bottom-left-radius:3px}
.chat-bubble.ai.err{border-color:var(--danger)}
.chat-cursor{display:inline-block;width:8px;height:15px;background:var(--accent);margin-left:2px;vertical-align:-2px;animation:chatblink .8s steps(1) infinite}
@keyframes chatblink{50%{opacity:0}}
.chat-usage{font-size:11px;color:var(--muted);margin-top:4px;font-family:ui-monospace,Consolas,monospace}
.chat-input{display:flex;gap:10px;margin-top:10px;align-items:flex-end}
.chat-input textarea{flex:1;resize:vertical}
.ref-card{border-left:3px solid var(--accent)}
.ref-card:hover{border-color:var(--accent)}
.chat-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.chat-stat-link{cursor:pointer;transition:border .15s, transform .1s}
.chat-stat-link:hover{border-color:var(--accent);transform:translateY(-2px)}
@media(max-width:1100px){.chat-stats{grid-template-columns:repeat(3,1fr)}}