feat(routes): add /lead-verification route + sidebar nav (OWNER/ADMIN/FIELD_AGENT)

This commit is contained in:
Satyam Rastogi
2026-05-29 21:20:40 +05:30
parent f579769e19
commit adfe44426c
2 changed files with 10 additions and 1 deletions
+6
View File
@@ -44,6 +44,7 @@ import LeadProjectPage from './pages/LeadProjectPage';
import StormIntelPage from './pages/StormIntelPage';
import FieldStormZonePage from './pages/FieldStormZonePage';
import UserDetailsPage from './pages/UserDetailsPage';
import LeadVerificationPage from './pages/LeadVerification/LeadVerificationPage';
// ... (existing imports)
const ProtectedRoute = ({ children, allowedRoles }) => {
@@ -95,6 +96,11 @@ function App() {
<UserDetailsPage />
</ProtectedRoute>
} />
<Route path="/lead-verification" element={
<ProtectedRoute allowedRoles={['OWNER', 'ADMIN', 'FIELD_AGENT']}>
<LeadVerificationPage />
</ProtectedRoute>
} />
<Route
path="/emp/fa/dashboard"
+4 -1
View File
@@ -6,7 +6,7 @@ import {
LayoutDashboard, Map, Calendar, LogOut, User, Home, MessageSquare,
ChevronLeft, ChevronRight, Sun, Moon, Trophy, Users, Briefcase,
FileText, Menu, X, Calculator, PlusCircle, ClipboardList, Zap, LayoutGrid, Settings, CloudLightning,
HardHat
HardHat, ShieldCheck
} from 'lucide-react';
import PageTransition from './PageTransition';
@@ -139,6 +139,7 @@ const Layout = () => {
{ to: "/admin/dashboard", icon: LayoutDashboard, label: "Dashboard" },
{ to: "/owner/projects", icon: Briefcase, label: "Projects" },
{ to: "/emp/fa/leads", icon: ClipboardList, label: "Leads" },
{ to: "/lead-verification", icon: ShieldCheck, label: "Lead Verification" },
{ to: "/owner/kanban", icon: LayoutGrid, label: "Pipeline" },
{ to: "/admin/dispatch", icon: Zap, label: "LynkDispatch" },
{ to: "/owner/storm-intel", icon: CloudLightning, label: "Storm Intel" },
@@ -161,6 +162,7 @@ const Layout = () => {
{ to: "/admin/schedule", icon: Calendar, label: "Schedule" },
{ to: "/admin/leaderboard", icon: Trophy, label: "Leaderboard" },
{ to: "/emp/fa/leads", icon: ClipboardList, label: "Leads" },
{ to: "/lead-verification", icon: ShieldCheck, label: "Lead Verification" },
{ to: "/admin/kanban", icon: LayoutGrid, label: "Pipeline" },
{ to: "/admin/dispatch", icon: Zap, label: "LynkDispatch" },
{ to: "/admin/storm-intel", icon: CloudLightning, label: "Storm Intel" },
@@ -193,6 +195,7 @@ const Layout = () => {
{ to: "/emp/fa/dashboard", icon: LayoutDashboard, label: "Dashboard" },
{ to: "/emp/fa/maps", icon: Map, label: "My Map" },
{ to: "/emp/fa/leads", icon: ClipboardList, label: "Leads" },
{ to: "/lead-verification", icon: ShieldCheck, label: "Lead Verification" },
{ to: "/emp/fa/kanban", icon: LayoutGrid, label: "Pipeline" },
{ to: "/field/storm-zones", icon: CloudLightning, label: "Storm Zones" },
{