feat: workspace-first UI refresh - PR-3 projects page + routing cleanup

- Rewrite ProjectsPage with inline repository and workspace display
- Expandable project cards showing repos + workspace chips
- Inline workspace creation from project page (New Workspace button per repo)
- Workspace chips link to workspace detail page
- Sync/delete actions on workspace chips
- Update Project type: add ProjectWithRepos, RepositorySummary, WorkspaceSummary
- Update listProjects API to return ProjectWithRepos[]
- Update dashboard, sessions, config-profiles to use ProjectWithRepos
- Remove old /projects/:projectId route (RepoWorkspace)
- Add chevron icons to Icon component
- Projects page CSS: project-toggle, repo-block, workspace-grid, workspace-chip
- TypeScript + eslint clean

Quality gates: tsc --noEmit clean, eslint clean
This commit is contained in:
2026-06-01 17:18:51 +02:00
parent 27c77af591
commit 88a973dc68
10 changed files with 620 additions and 381 deletions
+7 -1
View File
@@ -36,6 +36,8 @@ import {
ArrowLeft,
DotsSixVertical,
Bell,
CaretDown,
CaretRight,
} from "@phosphor-icons/react";
export type IconName =
@@ -79,7 +81,9 @@ export type IconName =
| "terminal"
| "arrow-left"
| "drag"
| "bell";
| "bell"
| "chevron-down"
| "chevron-right";
const iconMap: Record<
IconName,
@@ -129,6 +133,8 @@ const iconMap: Record<
"arrow-left": ArrowLeft,
drag: DotsSixVertical,
bell: Bell,
"chevron-down": CaretDown,
"chevron-right": CaretRight,
};
export interface IconProps {