Moves the repo sidebar to a tab based approach and improves the repo page header. Also adds mobile styling for all of it.
Moves the repo sidebar to a tab based approach and improves the repo page header. Also adds mobile styling for all of it.
New revision:
- Replace status filter dropdowns with tab-style buttons on issues (Open/Closed) and patches (Open/Draft/Archived/Merged) list pages, using the same gray/background button variants with counters as the repo header tabs
- Replace Activity/Changes tabs on patch detail page with the same consistent button style, with white background and border top/bottom
- Hide copy link button on issues and patches pages (both list and detail views)
- Adjust tab bar padding to 1rem all around
- Update seed button counter to use neutral color-surface-mid instead of brand color
Use gray variant for seed button
Simplify file component borders to use dividers
Remove outline borders and border-radius from the File component header and container. Use a simple bottom border divider instead, consistent with the new flat layout style. Remove the now-unused .collapsed class.
Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com
Use standard button variants for source sub-tabs
Replace tab/tab-active button variants with gray/background for the Files and Commits buttons, matching the repo-level tab bar style. Add full-width subheader dividers and adjust source layout with a tree border. Simplify commit count fetching in History view.
Adjust tab bar padding and seed button counter styling
Change tab bar container padding to 1rem all around. Update seed button counter to use color-surface-mid background with secondary text color instead of the brand color.
Remove unused seedingPolicy prop from components
Remove seedingPolicy from Commit, Issue, Issues, Patch, and Patches components and their corresponding route params in the router. These components never used the prop directly.
Replace dropdowns with tab buttons on issues and patches pages
Replace the status filter dropdowns on the issues list (Open/Closed) and patches list (Open/Draft/Archived/Merged) with tab-style buttons using the standard gray/background variants with counters. Replace the Activity/Changes tabs on the patch detail page with the same button style. Hide the copy link button on issues and patches pages.
Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com
Revision update:
- Replaced status filter dropdowns with tab-style buttons on issues (Open/Closed) and patches (Open/Draft/Archived/Merged) list pages
- Replaced Activity/Changes tabs on patch detail page with the same consistent gray/background button style, white background with border top/bottom
- Hidden copy link button on issues and patches pages (list and detail views)
- Adjusted tab bar padding to 1rem all around
- Updated seed button counter to use neutral color-surface-mid instead of brand color
- Simplified file component borders to divider-only style
- Replaced Files/Commits tab buttons with standard gray/background variants
- Removed unused seedingPolicy prop from 5 components and router
Add border around file diffs in changeset view
Show only icons for inactive patch tabs on mobile
Fix cross icon name to close in source header
Update e2e tests for tab-based UI and fix cross icon
Fix Prettier formatting issues
New revision adds:
- Border around file diffs in changeset view
- NodeId component in delegate hover popover
- Mobile-only icon tabs for patches page
- E2E test updates for tab-based UI (fixed cross→close icon, visible-only selectors, tab-based filtering)
- Prettier formatting fixes
New revision adds:
- Border around file diffs in changeset view
- NodeId component in delegate hover popover
- Mobile-only icon tabs for patches page
- E2E test updates for tab-based UI (fixed cross→close icon, visible-only selectors, tab-based filtering)
- Prettier formatting fixes
Fix intermittent TypeError during route transitions
Svelte 5’s signal system can evaluate derived signals in child components before parent {#if} blocks destroy them. When the route store changes (e.g. from repo.commit to repo.patch), the spread props update before the old component is unmounted, causing commit to become undefined and Changeset to throw accessing undefined.files.
Use optional chaining on Commit prop expressions so getters return undefined instead of throwing, and guard Changeset template with {#if diff} plus optional chaining on files lookups.
Fix review feedback: sticky headers, borders, duplicate button
- Use overflow: clip instead of hidden on file wrapper so sticky file diff headers work again
- Show header border-bottom only when expanded to avoid 2px border
- Remove duplicate Copy link button from commit view
- Lower repo card activity container query to 30rem
Squash
Rebase
Fix types
Fixups
Squash