feat: worker attach workspace console
This commit is contained in:
@@ -677,3 +677,227 @@
|
||||
cursor: not-allowed;
|
||||
opacity: 0.55;
|
||||
}
|
||||
|
||||
.nav-link {
|
||||
display: grid;
|
||||
gap: var(--space-1);
|
||||
color: inherit;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.nav-item.active,
|
||||
.nav-item:has(.nav-link[aria-current='page']) {
|
||||
background: color-mix(in srgb, var(--accent) 12%, transparent);
|
||||
border-color: color-mix(in srgb, var(--accent) 35%, var(--border));
|
||||
}
|
||||
|
||||
.inline-link,
|
||||
.secondary-button {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
gap: var(--space-1);
|
||||
border-radius: 999px;
|
||||
border: 1px solid var(--border);
|
||||
padding: 0.4rem 0.75rem;
|
||||
background: #ffffff;
|
||||
color: #1d4ed8;
|
||||
font-size: 0.85rem;
|
||||
font-weight: 800;
|
||||
text-decoration: none;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.secondary-button:hover,
|
||||
.inline-link:hover {
|
||||
border-color: #bfdbfe;
|
||||
background: #eff6ff;
|
||||
}
|
||||
|
||||
.worker-console-shell {
|
||||
grid-template-rows: auto minmax(0, 1fr) auto;
|
||||
}
|
||||
|
||||
.console-status-pill {
|
||||
min-width: 14rem;
|
||||
padding: 0.75rem 0.9rem;
|
||||
border-radius: 16px;
|
||||
background: #ecfeff;
|
||||
border: 1px solid #a5f3fc;
|
||||
color: #0f766e;
|
||||
font-weight: 800;
|
||||
text-transform: uppercase;
|
||||
letter-spacing: 0.04em;
|
||||
font-size: 0.76rem;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.console-status-pill.warn {
|
||||
background: #fff7ed;
|
||||
border-color: #fed7aa;
|
||||
color: #c2410c;
|
||||
}
|
||||
|
||||
.console-grid {
|
||||
display: grid;
|
||||
grid-template-columns: minmax(0, 1fr) minmax(18rem, 26rem);
|
||||
gap: var(--space-4);
|
||||
min-height: 0;
|
||||
}
|
||||
|
||||
.transcript-toolbar {
|
||||
display: flex;
|
||||
align-items: flex-start;
|
||||
justify-content: space-between;
|
||||
gap: var(--space-3);
|
||||
}
|
||||
|
||||
.worker-transcript {
|
||||
display: grid;
|
||||
gap: var(--space-3);
|
||||
max-height: min(68dvh, 50rem);
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
overflow-y: auto;
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
.worker-transcript li {
|
||||
display: grid;
|
||||
gap: var(--space-2);
|
||||
border: 1px solid #e2e8f0;
|
||||
border-left: 4px solid #cbd5e1;
|
||||
border-radius: 14px;
|
||||
padding: 0.75rem 0.85rem;
|
||||
background: #ffffff;
|
||||
}
|
||||
|
||||
.worker-transcript li.user {
|
||||
border-left-color: #2563eb;
|
||||
background: #eff6ff;
|
||||
}
|
||||
|
||||
.worker-transcript li.assistant {
|
||||
border-left-color: #10b981;
|
||||
background: #f0fdf4;
|
||||
}
|
||||
|
||||
.worker-transcript li.error-line {
|
||||
border-left-color: #dc2626;
|
||||
background: #fef2f2;
|
||||
}
|
||||
|
||||
.message-heading {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
gap: var(--space-2);
|
||||
color: #0f172a;
|
||||
font-weight: 800;
|
||||
}
|
||||
|
||||
.message-heading small {
|
||||
margin: 0;
|
||||
color: #64748b;
|
||||
font-size: 0.74rem;
|
||||
font-weight: 700;
|
||||
text-transform: uppercase;
|
||||
}
|
||||
|
||||
.worker-transcript pre {
|
||||
max-width: 100%;
|
||||
margin: 0;
|
||||
overflow-x: auto;
|
||||
white-space: pre-wrap;
|
||||
color: #1f2937;
|
||||
}
|
||||
|
||||
.message-detail,
|
||||
.metadata-details {
|
||||
color: #475569;
|
||||
font-size: 0.84rem;
|
||||
}
|
||||
|
||||
.message-detail summary,
|
||||
.metadata-details summary {
|
||||
cursor: pointer;
|
||||
font-weight: 800;
|
||||
}
|
||||
|
||||
.console-side-card {
|
||||
align-content: start;
|
||||
display: grid;
|
||||
gap: var(--space-4);
|
||||
min-width: 0;
|
||||
}
|
||||
|
||||
.console-side-card dl,
|
||||
.console-side-card ul {
|
||||
display: grid;
|
||||
gap: var(--space-2);
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
.console-side-card dt {
|
||||
color: #64748b;
|
||||
font-size: 0.72rem;
|
||||
font-weight: 800;
|
||||
letter-spacing: 0.05em;
|
||||
text-transform: uppercase;
|
||||
}
|
||||
|
||||
.console-side-card dd {
|
||||
margin: 0;
|
||||
color: #0f172a;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.degrade-note {
|
||||
border: 1px solid #fde68a;
|
||||
border-radius: 12px;
|
||||
padding: 0.65rem 0.8rem;
|
||||
background: #fffbeb;
|
||||
}
|
||||
|
||||
.console-composer {
|
||||
display: grid;
|
||||
gap: var(--space-3);
|
||||
}
|
||||
|
||||
.console-composer label {
|
||||
color: #0f172a;
|
||||
font-weight: 800;
|
||||
}
|
||||
|
||||
.console-composer textarea {
|
||||
width: 100%;
|
||||
min-height: 7rem;
|
||||
resize: vertical;
|
||||
border: 1px solid #cbd5e1;
|
||||
border-radius: 14px;
|
||||
padding: 0.85rem 1rem;
|
||||
font: inherit;
|
||||
color: #0f172a;
|
||||
}
|
||||
|
||||
.console-composer textarea:disabled {
|
||||
background: #f8fafc;
|
||||
color: #64748b;
|
||||
}
|
||||
|
||||
@media (max-width: 960px) {
|
||||
.console-grid {
|
||||
grid-template-columns: 1fr;
|
||||
}
|
||||
|
||||
.console-header {
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
.console-status-pill {
|
||||
width: 100%;
|
||||
text-align: left;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user