Files
fusion/packages/dashboard/app/components/CliBinaryPanel.css
gsxdsm 4231c4a151 feat(fusion): add Global → General settings pane and wire fn --version
Move the Star-on-GitHub toggle, CLI Binary panel, and update-check
controls out of project General into a new Global → General pane (with
an inline Updates subsection), matching their actual scope. Drop the
CLI Binary panel's outlined card background and apply the standard
horizontal indent so it doesn't bleed to the pane edges.

Wire --version / -v in the fn/fusion bin so the dashboard's CLI Binary
probe gets a real version string instead of booting the dashboard and
reporting "unknown".

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-01 16:02:23 -07:00

230 lines
4.4 KiB
CSS

.cli-binary-panel {
display: flex;
flex-direction: column;
gap: 12px;
/* Match the horizontal indent every other top-level child of
.settings-content uses (.form-group, .settings-section-heading, etc.).
Top margin matches .form-group so consecutive sections breathe the same. */
padding: 0 var(--space-xl);
margin-top: var(--space-lg);
border: 0;
background: transparent;
}
.cli-binary-header {
display: flex;
align-items: center;
justify-content: space-between;
gap: 12px;
}
.cli-binary-header .settings-section-heading {
margin: 0;
}
.cli-binary-pill {
display: inline-flex;
align-items: center;
padding: 2px 10px;
border-radius: 999px;
font-size: 11px;
font-weight: 600;
letter-spacing: 0.02em;
text-transform: uppercase;
}
.cli-binary-pill--ok {
background: rgba(46, 160, 67, 0.18);
color: #57c97a;
border: 1px solid rgba(46, 160, 67, 0.4);
}
.cli-binary-pill--warn {
background: rgba(210, 153, 34, 0.18);
color: #e3b341;
border: 1px solid rgba(210, 153, 34, 0.4);
}
.cli-binary-pill--err {
background: rgba(218, 54, 51, 0.18);
color: #f48581;
border: 1px solid rgba(218, 54, 51, 0.4);
}
.cli-binary-help {
color: var(--text-secondary, #98a3b1);
line-height: 1.4;
}
.cli-binary-help code {
background: rgba(255, 255, 255, 0.06);
padding: 1px 6px;
border-radius: 4px;
font-size: 0.92em;
}
.cli-binary-status-line {
margin: 0;
color: var(--text-secondary, #98a3b1);
}
.cli-binary-status-line code {
background: rgba(255, 255, 255, 0.06);
padding: 1px 6px;
border-radius: 4px;
}
.cli-binary-detail {
display: flex;
flex-direction: column;
gap: 12px;
}
.cli-binary-info-list {
list-style: none;
margin: 0;
padding: 0;
display: flex;
flex-direction: column;
gap: 4px;
font-size: 13px;
}
.cli-binary-info-list li {
display: flex;
align-items: center;
gap: 8px;
flex-wrap: wrap;
}
.cli-binary-info-list span {
color: var(--text-secondary, #98a3b1);
min-width: 64px;
}
.cli-binary-info-list code {
background: rgba(255, 255, 255, 0.06);
padding: 1px 6px;
border-radius: 4px;
word-break: break-all;
}
.cli-binary-expected {
color: var(--text-secondary, #98a3b1);
font-size: 12px;
}
.cli-binary-actions {
display: flex;
gap: 8px;
flex-wrap: wrap;
}
.cli-binary-install-btn,
.cli-binary-refresh-btn,
.cli-binary-copy-btn {
cursor: pointer;
border-radius: 6px;
padding: 6px 12px;
font-size: 13px;
border: 1px solid transparent;
transition: background 0.15s ease, border-color 0.15s ease;
}
.cli-binary-install-btn {
background: var(--accent, #3b82f6);
color: #fff;
}
.cli-binary-install-btn:hover:not(:disabled) {
background: var(--accent-hover, #2563eb);
}
.cli-binary-install-btn:disabled,
.cli-binary-refresh-btn:disabled {
opacity: 0.55;
cursor: not-allowed;
}
.cli-binary-refresh-btn,
.cli-binary-copy-btn {
background: rgba(255, 255, 255, 0.04);
color: var(--text-primary, #e6edf3);
border-color: rgba(255, 255, 255, 0.12);
}
.cli-binary-refresh-btn:hover:not(:disabled),
.cli-binary-copy-btn:hover {
background: rgba(255, 255, 255, 0.08);
}
.cli-binary-commands {
display: flex;
flex-direction: column;
gap: 6px;
}
.cli-binary-commands label {
font-size: 12px;
color: var(--text-secondary, #98a3b1);
text-transform: uppercase;
letter-spacing: 0.04em;
}
.cli-binary-command-row {
display: flex;
align-items: center;
gap: 8px;
background: rgba(0, 0, 0, 0.25);
border: 1px solid rgba(255, 255, 255, 0.06);
border-radius: 6px;
padding: 6px 8px 6px 12px;
}
.cli-binary-command-row code {
flex: 1;
font-family: var(--font-mono, ui-monospace, "SFMono-Regular", monospace);
font-size: 12.5px;
color: var(--text-primary, #e6edf3);
white-space: nowrap;
overflow-x: auto;
}
.cli-binary-install-log {
border-top: 1px solid rgba(255, 255, 255, 0.06);
padding-top: 10px;
font-size: 12.5px;
}
.cli-binary-install-log summary {
cursor: pointer;
color: var(--text-secondary, #98a3b1);
}
.cli-binary-install-output {
margin: 6px 0 0;
padding: 8px 10px;
background: rgba(0, 0, 0, 0.35);
border-radius: 4px;
max-height: 220px;
overflow: auto;
white-space: pre-wrap;
font-size: 12px;
line-height: 1.4;
}
.cli-binary-install-output--err {
color: #f48581;
}
.cli-binary-permissions-hint {
margin: 6px 0;
padding: 8px 10px;
background: rgba(218, 54, 51, 0.1);
border-left: 3px solid rgba(218, 54, 51, 0.55);
border-radius: 0 4px 4px 0;
color: #f7c4c2;
font-size: 12.5px;
line-height: 1.5;
}