mirror of
https://github.com/QwenLM/qwen-code.git
synced 2026-08-07 15:55:50 +00:00
* feat(web-shell): add artifact right panel * fix(web-shell): address artifact panel review feedback * fix(web-shell): handle artifact panel review edge cases * fix(web-shell): tighten scheduled task parsing * fix(web-shell): address artifact panel review followups * fix(web-shell): guard large file diff stats * fix(web-shell): address review panel suggestions * test(webui): stabilize heartbeat prompt cleanup test * fix(web-shell): address artifact review refresh issues * test(web-shell): stabilize ChatPane artifact hook mock * fix(web-shell): clear stale session artifacts while loading * fix(web-shell): preserve artifact tabs during refresh * fix(web-shell): address artifact review followups * fix(web-shell): respect workspace cwd for artifact outputs * fix(web-shell): scope artifact panel actions to pane * fix(web-shell): resolve split pane merge conflict * fix(web-shell): clear stale artifact panel state * fix(web-shell): preserve leading turn outputs * fix(web-shell): tighten turn output selectors * fix(web-shell): harden artifact preview sanitizer * fix(web-shell): address artifact panel review regressions * fix(web-shell): reconcile split pane artifact snapshots * fix(web-shell): clear pane artifacts on session switch * fix(web-shell): clear stale right panel snapshots * fix(web-shell): repair scheduled task hint string --------- Co-authored-by: ytahdn <ytahdn@gmail.com> Co-authored-by: qwen-code-dev-bot <qwen-code-dev-bot@users.noreply.github.com>
182 lines
2.7 KiB
CSS
182 lines
2.7 KiB
CSS
.root {
|
|
margin: 8px 0 12px;
|
|
display: grid;
|
|
gap: 8px;
|
|
}
|
|
|
|
.card {
|
|
border: 1px solid var(--border);
|
|
border-radius: 8px;
|
|
background: var(--background);
|
|
overflow: hidden;
|
|
}
|
|
|
|
.summary {
|
|
display: grid;
|
|
grid-template-columns: 34px minmax(0, 1fr) auto;
|
|
gap: 12px;
|
|
align-items: center;
|
|
padding: 12px;
|
|
}
|
|
|
|
.icon {
|
|
width: 34px;
|
|
height: 34px;
|
|
border-radius: 6px;
|
|
background: var(--accent);
|
|
color: var(--muted-foreground);
|
|
display: inline-flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
}
|
|
|
|
.iconSvg {
|
|
width: 24px;
|
|
height: 24px;
|
|
display: block;
|
|
}
|
|
|
|
.title {
|
|
min-width: 0;
|
|
color: var(--foreground);
|
|
font-size: 14px;
|
|
font-weight: 400;
|
|
}
|
|
|
|
.linkButton,
|
|
.reviewButton,
|
|
.showMoreButton {
|
|
appearance: none;
|
|
border: 0;
|
|
background: transparent;
|
|
color: var(--foreground);
|
|
font: inherit;
|
|
cursor: pointer;
|
|
}
|
|
|
|
.linkButton {
|
|
margin-top: 2px;
|
|
margin-left: 8px;
|
|
padding: 0;
|
|
color: var(--muted-foreground);
|
|
font-size: 13px;
|
|
opacity: 0;
|
|
pointer-events: none;
|
|
transition: opacity 120ms ease;
|
|
}
|
|
|
|
.card:hover .linkButton,
|
|
.linkButton:focus-visible {
|
|
opacity: 1;
|
|
pointer-events: auto;
|
|
}
|
|
|
|
.linkButton:hover,
|
|
.showMoreButton:hover {
|
|
color: var(--foreground);
|
|
}
|
|
|
|
.actions {
|
|
display: inline-flex;
|
|
align-items: center;
|
|
gap: 8px;
|
|
}
|
|
|
|
.reviewButton {
|
|
border: 1px solid var(--border);
|
|
border-radius: 8px;
|
|
padding: 4px 10px;
|
|
font-size: 14px;
|
|
font-weight: 400;
|
|
}
|
|
|
|
.reviewButton:hover {
|
|
background: var(--accent);
|
|
}
|
|
|
|
.list {
|
|
display: grid;
|
|
gap: 0;
|
|
border-top: 1px solid var(--border);
|
|
padding: 0;
|
|
}
|
|
|
|
.fileRow {
|
|
appearance: none;
|
|
border: 0;
|
|
background: transparent;
|
|
color: var(--foreground);
|
|
font: inherit;
|
|
cursor: pointer;
|
|
min-width: 0;
|
|
display: grid;
|
|
grid-template-columns: minmax(0, 1fr) auto;
|
|
gap: 10px;
|
|
align-items: center;
|
|
padding: 7px 14px;
|
|
text-align: left;
|
|
}
|
|
|
|
.fileRow:hover {
|
|
background: var(--accent);
|
|
}
|
|
|
|
.path {
|
|
min-width: 0;
|
|
overflow: hidden;
|
|
text-overflow: ellipsis;
|
|
white-space: nowrap;
|
|
color: var(--foreground);
|
|
font-size: 13px;
|
|
}
|
|
|
|
.lineStats {
|
|
display: inline-flex;
|
|
align-items: center;
|
|
gap: 4px;
|
|
font-size: 13px;
|
|
font-weight: 600;
|
|
white-space: nowrap;
|
|
}
|
|
|
|
.additions {
|
|
color: #16a34a;
|
|
}
|
|
|
|
.deletions {
|
|
color: #dc2626;
|
|
}
|
|
|
|
.showMoreButton {
|
|
justify-self: start;
|
|
padding: 7px 14px;
|
|
color: var(--foreground);
|
|
font-weight: 400;
|
|
display: inline-flex;
|
|
align-items: center;
|
|
gap: 6px;
|
|
}
|
|
|
|
.chevronIcon {
|
|
width: 14px;
|
|
height: 14px;
|
|
display: block;
|
|
color: var(--muted-foreground);
|
|
transition: transform 120ms ease;
|
|
}
|
|
|
|
.chevronIconOpen {
|
|
transform: rotate(180deg);
|
|
}
|
|
|
|
.artifactInfo {
|
|
min-width: 0;
|
|
display: grid;
|
|
gap: 2px;
|
|
}
|
|
|
|
.artifactMeta {
|
|
color: var(--muted-foreground);
|
|
font-size: 13px;
|
|
white-space: nowrap;
|
|
}
|