mara (#3704): 'remove rebuild button, move link to dashboards into links menu.' The overflow (⋯) menu existed for exactly two items: the dashboard back-link and a rebuild-container action. Rebuild is gone outright — the dashboard's own R3BU1LD button already covers it, this was just a rarely-used shortcut not worth its own menu. The dashboard link moves into MetaNav's links popover (now the first item, above stats/forge/ config/extras) instead. With both gone, OverflowMenu had nothing left to justify existing as a separate component — deleted along with its CSS and the now-unused rebuildAction.ts (only consumer). MetaNav gained a dashboardBase prop (Root.tsx already computes this via resolveDashboardBase for InboxPanel/pause — reused, not duplicated) and renders the dashboard link as a real <a>, same treatment as every other item in that popover — no dangling window.open()-only affordance. Updated docs/web-ui/agent.md's Header section and the couple of now-stale OverflowMenu references in index.html's/MetaNav.css's own comments. Verified: header now shows a single trailing icon-badge (was two), popover opens with dashboard first then the agent_links() set. tsc --noEmit clean, build clean, both pre-push lints clean.
40 lines
1.1 KiB
CSS
40 lines
1.1 KiB
CSS
/* <MetaNav> popover — matches `@hive/shared`'s `Dropdown` (`.ui-dropdown`)
|
|
values exactly (background/border/radius/shadow, item padding/hover),
|
|
same "reuse the values, not the component" call `.login-card`
|
|
(LoginFlow.css) already made, for the same reason: this popover's
|
|
items are real `<a>` tags, not `Dropdown`'s command-dispatch
|
|
`<button>`s. Right-anchored — MetaNav sits in the header's right-hand
|
|
pills cluster, so a left anchor would push it off-screen. */
|
|
.meta-nav-anchor {
|
|
position: relative;
|
|
display: inline-block;
|
|
}
|
|
.meta-nav-popover {
|
|
position: absolute;
|
|
top: calc(100% + 0.25em);
|
|
right: 0;
|
|
left: auto;
|
|
z-index: 20;
|
|
display: flex;
|
|
flex-direction: column;
|
|
min-width: 10em;
|
|
padding: 0.25em;
|
|
background: var(--bg-elev);
|
|
border: 1px solid var(--border);
|
|
border-radius: 0.5em;
|
|
box-shadow: 0 0.4em 1em rgba(0, 0, 0, 0.35);
|
|
}
|
|
.meta-nav-item {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 0.5em;
|
|
min-height: 2.75em;
|
|
padding: 0.4em 0.7em;
|
|
border-radius: 0.35em;
|
|
color: var(--fg);
|
|
text-decoration: none;
|
|
white-space: nowrap;
|
|
}
|
|
.meta-nav-item:hover {
|
|
background: var(--border);
|
|
}
|