fix(FN-2492): polish plugin manager bundled runtime UX

- Add a Bundled Runtime Plugins section with one-click install actions, install-state badges, and empty-state discoverability improvements
- Refine plugin detail semantics and controls by tightening heading hierarchy, button variants, and mobile/toggle styling behavior
- Expand PluginManager test coverage for bundled runtime installation, installed-state disabling, and heading-level accessibility contracts
- Clean up dashboard CSS ownership by removing duplicated global/toggle rules, updating surface-hover usage, and documenting bundled runtime discovery in settings docs
This commit is contained in:
Fusion
2026-04-25 13:46:00 -07:00
committed by gsxdsm
parent 6461108a05
commit c597dd4055
10 changed files with 360 additions and 192 deletions

View File

@@ -1100,51 +1100,6 @@ input[type="range"]:focus-visible {
margin-top: var(--space-xl);
}
.settings-plugins-subsection-toggle {
display: inline-flex;
gap: var(--space-xs);
padding: 0 var(--space-xl);
margin: var(--space-md) 0;
}
.settings-plugins-subsection-btn {
display: inline-flex;
align-items: center;
justify-content: center;
border: var(--btn-border-width) solid var(--border);
border-radius: var(--radius-pill);
background: var(--surface);
color: var(--text-muted);
font-size: 0.85rem;
font-weight: 600;
padding: var(--space-xs) var(--space-md);
cursor: pointer;
transition:
background var(--transition-fast),
color var(--transition-fast),
border-color var(--transition-fast),
box-shadow var(--transition-fast);
}
.settings-plugins-subsection-btn:hover {
background: var(--surface-hover);
color: var(--text);
}
.settings-plugins-subsection-btn:focus-visible {
outline: none;
box-shadow: var(--focus-ring-strong);
}
.settings-plugins-subsection-btn.active {
background: color-mix(in srgb, var(--todo) 14%, transparent);
border-color: color-mix(in srgb, var(--todo) 45%, var(--border));
color: var(--todo);
}
.settings-plugins-subsection-panel {
padding-bottom: var(--space-md);
}
/* Scope indicators in sidebar nav items */
.settings-scope-icon {
@@ -2950,17 +2905,6 @@ input[type="range"]:focus-visible {
margin: 0 var(--space-lg) 0;
}
.settings-plugins-subsection-toggle {
display: flex;
width: 100%;
padding: 0 var(--space-lg);
}
.settings-plugins-subsection-btn {
flex: 1;
min-height: 36px;
}
.form-group {
padding: 0 14px;
}