feat(file-summary): 增加前端汇总面板

This commit is contained in:
2026-06-06 10:25:11 +08:00
parent 61bd31790b
commit a917a18ca1
6 changed files with 529 additions and 7 deletions

View File

@@ -127,7 +127,7 @@ input:focus {
.workspace {
display: grid;
grid-template-columns: 296px minmax(0, 1fr);
grid-template-columns: 296px minmax(0, 1fr) 340px;
min-height: 100vh;
}
@@ -760,9 +760,176 @@ input:focus {
padding-right: 12px;
}
.summary-panel {
display: grid;
grid-template-rows: auto auto minmax(0, 1fr);
gap: 14px;
min-width: 0;
max-height: 100vh;
padding: 16px;
overflow: auto;
border-left: 1px solid var(--line);
background: #ffffff;
}
.summary-section {
display: grid;
gap: 12px;
padding: 14px;
border: 1px solid var(--line);
border-radius: 8px;
background: var(--panel-soft);
}
.summary-heading,
.summary-subheading,
.workflow-card header {
display: flex;
align-items: center;
justify-content: space-between;
gap: 12px;
}
.summary-heading h2,
.summary-subheading h3 {
margin: 0;
font-size: 16px;
}
.summary-heading span {
color: var(--muted);
font-size: 12px;
}
.upload-dropzone {
display: grid;
place-items: center;
gap: 6px;
min-height: 112px;
padding: 18px;
border: 1px dashed var(--accent);
border-radius: 8px;
background: #f5f9ff;
color: var(--text);
cursor: pointer;
text-align: center;
}
.upload-dropzone.dragging {
border-color: var(--accent-dark);
background: #eaf2ff;
}
.upload-dropzone span,
.upload-status,
.attachment-item span,
.workflow-card em {
color: var(--muted);
font-size: 12px;
}
.upload-status {
margin: 0;
line-height: 1.5;
}
.attachment-list,
.workflow-card-list {
display: grid;
gap: 10px;
}
.attachment-item,
.workflow-card {
display: grid;
gap: 10px;
padding: 12px;
border: 1px solid var(--line);
border-radius: 8px;
background: #ffffff;
}
.attachment-item {
grid-template-columns: minmax(0, 1fr) auto;
align-items: center;
}
.attachment-item strong,
.workflow-card strong {
display: block;
overflow-wrap: anywhere;
font-size: 13px;
}
.attachment-item em,
.workflow-status {
padding: 3px 8px;
border-radius: 999px;
background: #eaf2ff;
color: var(--accent);
font-size: 11px;
font-style: normal;
font-weight: 700;
}
.workflow-card ol {
display: grid;
gap: 8px;
margin: 0;
padding: 0;
list-style: none;
}
.node-status {
display: flex;
align-items: center;
justify-content: space-between;
gap: 10px;
padding: 8px 0;
border-top: 1px solid var(--line);
font-size: 13px;
}
.status-running,
.status-retrying {
color: var(--accent);
}
.status-success {
color: #047857;
}
.status-failed {
color: var(--danger-text);
}
.panel-empty {
padding: 14px;
border: 1px dashed var(--line);
border-radius: 8px;
color: var(--muted);
text-align: center;
}
.message-bubble table {
width: 100%;
border-collapse: collapse;
font-size: 13px;
}
.message-bubble th,
.message-bubble td {
padding: 8px;
border: 1px solid var(--line);
text-align: left;
vertical-align: top;
}
@media (max-width: 980px) {
.workspace {
grid-template-columns: minmax(0, 1fr);
min-height: 100vh;
overflow: auto;
}
.sidebar {
@@ -815,7 +982,14 @@ input:focus {
}
.chat-stage {
height: calc(100vh - 88px);
min-height: calc(100vh - 88px);
height: auto;
}
.summary-panel {
max-height: none;
border-left: 0;
border-top: 1px solid var(--line);
}
.chat-scroll {
@@ -889,7 +1063,7 @@ input:focus {
width: 20px;
}
.node-dot {
.node-dot {
width: 10px;
height: 10px;
}