fix(web): kb 条目与单篇页补显原件文件名

已入库条目此前只把 source 用于查看/下载按钮,原件名(含后缀)无处显示。
标题后加灰色小字原件名(悬停提示同步带上),单篇页头部加「原件: xxx」,
新增 .kb-src-name 样式两处共用;不破坏单行精简版式。

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
caoqianming 2026-07-24 16:17:39 +08:00
parent e03a1ee7eb
commit eab623d5b5
2 changed files with 5 additions and 3 deletions

View File

@ -506,6 +506,7 @@
}
.kb-ingest-err { margin-top: 8px; font-size: 12px; color: #b45309; }
.kb-pending { padding: 3px 0; font-size: 12px; color: var(--muted); }
.kb-src-name { font-weight: 400; font-size: 11px; color: var(--muted); margin-left: 6px; }
.kb-entry { display: flex; align-items: flex-start; gap: 6px; padding: 6px 0; border-bottom: 1px dashed var(--border); }
.kb-entry-main { flex: 1; min-width: 0; cursor: pointer; }
/* 标题/摘要各压一行省略(sk-item 的省略规则只覆盖左栏,这里单列);全文在悬停 title */

View File

@ -135,11 +135,11 @@ function renderDetail(d) {
const doc = e.doc.replace(/^docs\//, "");
const src = (e.source || "").replace(/^sources\//, "");
if (src) _docSources[doc] = src;
// 行内只留标题 + 单行摘要(CSS 省略);完整摘要/关键词进 title 悬停提示,不占行高
const tip = e.summary + (e.keywords ? "\n关键词: " + e.keywords : "");
// 行内只留标题(+原件名小字)+ 单行摘要(CSS 省略);完整摘要/关键词进 title 悬停提示,不占行高
const tip = e.summary + (e.keywords ? "\n关键词: " + e.keywords : "") + (src ? "\n原件: " + src : "");
return `<div class="kb-entry">
<div class="kb-entry-main" data-doc="${escapeHtml(doc)}" title="${escapeHtml(tip)}">
<div class="sk-name">${escapeHtml(e.title)}</div>
<div class="sk-name">${escapeHtml(e.title)}${src ? `<span class="kb-src-name">${escapeHtml(src)}</span>` : ""}</div>
<div class="sk-desc">${escapeHtml(e.summary)}</div>
</div>
${src ? `<button class="small kb-src-view" data-src="${escapeHtml(src)}" title="查看原件">👁</button>
@ -166,6 +166,7 @@ async function showDoc(filename) {
detail.innerHTML =
`<div class="sk-d-head"><button id="kb-back" class="small">← 返回</button>
<span class="sk-d-name">${escapeHtml(filename)}</span>
${src ? `<span class="kb-src-name">原件: ${escapeHtml(src)}</span>` : ""}
<span class="spacer"></span>
${src ? `<button id="kb-doc-src-view" class="small" data-src="${escapeHtml(src)}">查看原件</button>
<button id="kb-doc-src-dl" class="small" data-src="${escapeHtml(src)}">下载原件</button>` : ""}