fix(web): kb 条目与单篇页补显原件文件名
已入库条目此前只把 source 用于查看/下载按钮,原件名(含后缀)无处显示。 标题后加灰色小字原件名(悬停提示同步带上),单篇页头部加「原件: xxx」, 新增 .kb-src-name 样式两处共用;不破坏单行精简版式。 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
parent
e03a1ee7eb
commit
eab623d5b5
|
|
@ -506,6 +506,7 @@
|
||||||
}
|
}
|
||||||
.kb-ingest-err { margin-top: 8px; font-size: 12px; color: #b45309; }
|
.kb-ingest-err { margin-top: 8px; font-size: 12px; color: #b45309; }
|
||||||
.kb-pending { padding: 3px 0; font-size: 12px; color: var(--muted); }
|
.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 { 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; }
|
.kb-entry-main { flex: 1; min-width: 0; cursor: pointer; }
|
||||||
/* 标题/摘要各压一行省略(sk-item 的省略规则只覆盖左栏,这里单列);全文在悬停 title */
|
/* 标题/摘要各压一行省略(sk-item 的省略规则只覆盖左栏,这里单列);全文在悬停 title */
|
||||||
|
|
|
||||||
|
|
@ -135,11 +135,11 @@ function renderDetail(d) {
|
||||||
const doc = e.doc.replace(/^docs\//, "");
|
const doc = e.doc.replace(/^docs\//, "");
|
||||||
const src = (e.source || "").replace(/^sources\//, "");
|
const src = (e.source || "").replace(/^sources\//, "");
|
||||||
if (src) _docSources[doc] = src;
|
if (src) _docSources[doc] = src;
|
||||||
// 行内只留标题 + 单行摘要(CSS 省略);完整摘要/关键词进 title 悬停提示,不占行高
|
// 行内只留标题(+原件名小字)+ 单行摘要(CSS 省略);完整摘要/关键词进 title 悬停提示,不占行高
|
||||||
const tip = e.summary + (e.keywords ? "\n关键词: " + e.keywords : "");
|
const tip = e.summary + (e.keywords ? "\n关键词: " + e.keywords : "") + (src ? "\n原件: " + src : "");
|
||||||
return `<div class="kb-entry">
|
return `<div class="kb-entry">
|
||||||
<div class="kb-entry-main" data-doc="${escapeHtml(doc)}" title="${escapeHtml(tip)}">
|
<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 class="sk-desc">${escapeHtml(e.summary)}</div>
|
||||||
</div>
|
</div>
|
||||||
${src ? `<button class="small kb-src-view" data-src="${escapeHtml(src)}" title="查看原件">👁</button>
|
${src ? `<button class="small kb-src-view" data-src="${escapeHtml(src)}" title="查看原件">👁</button>
|
||||||
|
|
@ -166,6 +166,7 @@ async function showDoc(filename) {
|
||||||
detail.innerHTML =
|
detail.innerHTML =
|
||||||
`<div class="sk-d-head"><button id="kb-back" class="small">← 返回</button>
|
`<div class="sk-d-head"><button id="kb-back" class="small">← 返回</button>
|
||||||
<span class="sk-d-name">${escapeHtml(filename)}</span>
|
<span class="sk-d-name">${escapeHtml(filename)}</span>
|
||||||
|
${src ? `<span class="kb-src-name">原件: ${escapeHtml(src)}</span>` : ""}
|
||||||
<span class="spacer"></span>
|
<span class="spacer"></span>
|
||||||
${src ? `<button id="kb-doc-src-view" class="small" data-src="${escapeHtml(src)}">查看原件</button>
|
${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>` : ""}
|
<button id="kb-doc-src-dl" class="small" data-src="${escapeHtml(src)}">下载原件</button>` : ""}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue