Repository navigation
fix(portal): keep key previews in the full-bleed shell - #1459
Conversation
|
Thank you for your contirbution Ming You (@itzKLAUS) . In order for us to review and merge your changes, can you please review and accept the CLA? Thanks. |
@microsoft-github-policy-service agree |
There was a problem hiding this comment.
Verified locally: both new Layout tests fail without the route fix and pass with it, and portal tsc is clean. Thanks for the Storybook story and the before/after recordings, they made this easy to review.
Not blocking: the other nested preview routes (/reports, /insights, /criteria, /task-prompts, /mcp-servers, /extensions, /profiles) aren't in FULL_BLEED_ROUTE_PATTERNS either, so they shift the same way. Ming You (@itzKLAUS) Wanna take that as a follow-up?
|
Thank you Ming You (@itzKLAUS) ! |
Happy to contribute! If you found this helpful, a follow on X would be greatly appreciated:(https://x.com/itzklaus2). I'll gladly follow back. Thank you! |
Summary
Opening a key preview changes the pathname to
/secrets/keys/:id/preview, which was absent from the exact-match full-bleed route list. The shell consequently adds its standard padding and moves the tabs, filter rail, and list when the detail panel opens.Add the preview route to the list layout contract. Cover open/close navigation, direct preview loading, and preservation of padding on registration and full-detail pages. Add a Storybook example using the real Keys list and preview panel with synthetic metadata.
Closes #1455.
Demos
Both recordings use seven synthetic keys in the
components/Layout / Key Previewstory at 1440 x 960. Media lives on a separate branch of the contributor fork and is not part of this PR's source diff.Before
Before recording: closing and reopening the preview changes the shell padding and shifts the Keys layout.
After
After recording: opening and closing the preview retains the list shell and alignment.
Testing
pnpm --filter portal lint: passed.pnpm --filter portal build-storybook: passed.git diff --check: passed.Tests ran on Windows with a local, uncommitted Vitest config that normalizes the existing
@/alias to forward slashes. Command:pnpm test --config tmp/windows-vitest.config.ts apps/portal/src --maxWorkers=2. The checked-in config's alias fails import resolution on this host. The shim changes no test selection or runtime behavior. Full monorepo lint/tests and service integration tests were not run for this portal-only route change.Documentation and compatibility
Updated the Portal Shell section in
docs/architecture/app-design.md. No API, CLI, database, dependency, or lockfile changes.Checklist