From ec1d9dfb2556c2c4095a1ab8c00c967a7271bb69 Mon Sep 17 00:00:00 2001 From: Satyam Rastogi Date: Fri, 29 May 2026 15:51:09 +0530 Subject: [PATCH] feat(routes): unify won leads and projects on a single /projects/:id page - add role-prefix-free /projects/:id route (OWNER/ADMIN/FIELD_AGENT; ABAC guard lands in Phase 8) - relax detail lookup so admin/field-agent open any project, owners only their own - kanban drawer + project list route won leads (with projectId) to /projects/:id; pre-sale leads stay on the lead page --- src/App.jsx | 6 ++++++ src/components/kanban/LeadInfoDrawer.jsx | 4 +++- src/pages/owner/OwnerProjectDetail.jsx | 3 ++- src/pages/owner/OwnerProjectList.jsx | 8 ++++---- 4 files changed, 15 insertions(+), 6 deletions(-) diff --git a/src/App.jsx b/src/App.jsx index f186611..a3f6287 100644 --- a/src/App.jsx +++ b/src/App.jsx @@ -188,6 +188,12 @@ function App() { } /> + {/* Unified project detail — won leads and projects share this page (interim coarse guard; ABAC policy guard lands in Phase 8) */} + + + + } /> diff --git a/src/components/kanban/LeadInfoDrawer.jsx b/src/components/kanban/LeadInfoDrawer.jsx index 3799377..14bc143 100644 --- a/src/components/kanban/LeadInfoDrawer.jsx +++ b/src/components/kanban/LeadInfoDrawer.jsx @@ -299,7 +299,9 @@ export default function LeadInfoDrawer({ lead, columns, isOpen, onClose }) {