Skip to content

Navigation and content-layout redesign#2016

Open
GregorShear wants to merge 2 commits into
mainfrom
greg/dash/nav
Open

Navigation and content-layout redesign#2016
GregorShear wants to merge 2 commits into
mainfrom
greg/dash/nav

Conversation

@GregorShear

Copy link
Copy Markdown
Contributor

Summary

Redesigns the app shell around a collapsible left sidebar and a content-area header, and moves app icons from iconoir-react to lucide-react.

Changes

Navigation

  • Collapsible left sidebar (full width ↔ icon rail). The user menu, help menu, Agent Skills entry, and the dark-mode toggle now live in the sidebar instead of the top bar.
  • Top bar reduced to the logo (CompanyMark when collapsed), update alert, and docs toggle.
  • ListItemLink takes route links (link) and action handlers (onClick) as separate props, with active-route highlighting via useMatch.

Layout / theme

  • Grid-based Layout with a content header in PageContainer that shows the page title.
  • Theme: rounded buttons/icon buttons, drawer and list overrides, lucide icon sizing.
  • Icons migrated to lucide-react across the app. iconoir-react is kept as a dependency for the remaining usages.

Pages

  • Per-page "New" create buttons restored on captures / collections / materializations.

Notes for reviewers

Testing

  • npm run typecheck and npm run lint pass.
  • Visual QA of the expanded/collapsed sidebar (icon alignment) is still pending.

@GregorShear GregorShear requested a review from a team as a code owner June 26, 2026 19:35
Squashed rebase of greg/dash/nav onto main. Reworks the app shell:
- Collapsible left sidebar nav; user menu, help menu, Agent Skills, and the dark-mode toggle relocated into the sidebar
- New content header / PageContainer layout, CompanyMark when collapsed
- Theme updates: rounded buttons/icon-buttons, drawer/list overrides, lucide icons (iconoir retained as a dependency)
- Per-page create buttons restored on captures/collections/materializations; admin tenant selector kept
- Connector settings page removed

Reconciled with work merged to main since this branch diverged: the AgentSkills PR (#1975/#1985) and the i18n-deprecation refactor (#2009). ListItemLink keeps main's named-export + deprecated-wrapper pattern and active-route highlighting (useMatch), with a separate onClick prop for action items. The AgentSkills toast retains main's #1985 docs-open hide behavior.
Adopt the agent2 layout shell without the Copilot assistant.

- Delete TopBar and drop its grid row from Layout (gridTemplateRows auto 1fr -> 1fr).
- Pad the content column with the top strip the top bar used to occupy, so the docs side panel stays top-aligned with the page content and the header lines up with the first sidebar nav item below the logo header.
- Move the brand into the sidebar header: full CompanyLogo when expanded, CompanyMark when collapsed, left-anchored so the mark does not jump as the drawer width animates on collapse.
- Move the docs open button onto the trailing edge of the PageContainer content header; the header shows the bold page title.

UpdateAlert is intentionally orphaned for now. It previously lived in the TopBar, and agent2 only renders it inside the Copilot status bar, which this branch does not include.

Keep dash/nav's in-table title removal (EntityTable, Collections); the content header shows the page title, so the in-table title would otherwise duplicate it. Revert the unrelated changes to main: UserAvatar default image, the ExternalLink type decoupling in Error/content, and the icon-context changes in CheckSquare/EditOff. Keep ChipList/Wrapper as-is because its underline removal is coupled to this branch's Theme cleanup (underlineTextSx is no longer exported).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant