"use client"; import { useState } from "react"; import { LayoutGrid, CheckSquare, Crosshair, FileText, Box, Zap, ClipboardCheck, BarChart2, Pencil, Plus, Sparkles, } from "lucide-react"; // Mock Data matching the design const initialModules = [ { id: "MOD-01", title: "Dashboard", description: "Operational overview & live KPIs", icon: LayoutGrid, menus: [], // Currently empty as per screenshot }, { id: "MOD-02", title: "Helpdesk", description: "Tickets, requests & SLA tracking", icon: CheckSquare, menus: ["Tickets", "SLA Settings", "Queues"], }, { id: "MOD-03", title: "Equipment", description: "Asset register & equipment groups", icon: Crosshair, menus: ["Asset Register", "Categories"], }, { id: "MOD-04", title: "Request", description: "Service requests & approvals", icon: FileText, menus: ["My Requests", "Approvals"], }, { id: "MOD-05", title: "Inventory", description: "Stock, spares & consumables", icon: Box, menus: ["Stock Levels", "Suppliers"], }, { id: "MOD-06", title: "Energy", description: "Meters, consumption & analytics", icon: Zap, menus: ["Meters", "Analytics"], }, { id: "MOD-07", title: "Inspections", description: "QR rounds & checklists", icon: ClipboardCheck, menus: ["Rounds", "Checklists"], }, { id: "MOD-08", title: "Reports", description: "Analytics & export tools", icon: BarChart2, menus: ["Scheduled Reports", "Custom Builder"], }, ]; export default function ModulesPortal() { const [selectedModuleId, setSelectedModuleId] = useState("MOD-01"); const activeModule = initialModules.find((m) => m.id === selectedModuleId); return (
The catalog of system modules and their menus. These are what you switch on per tenant under feature access.
{module.description}
No menus under this module yet.