2534 lines
74 KiB
TypeScript
2534 lines
74 KiB
TypeScript
import ActionButtons from "@/components/common/actionButton";
|
||
import Button from "@/components/common/button";
|
||
import { StatusBadge } from "@/components/common/statusBadge";
|
||
|
||
|
||
//Device Fleet
|
||
export const devicefleetheaders = [
|
||
"DEVICE",
|
||
"TYPE",
|
||
"PROTOCOL",
|
||
"LOCATION",
|
||
"FIRMWARE",
|
||
"LAST SEEN",
|
||
"STATUS",
|
||
"",
|
||
];
|
||
|
||
export const devicefleetrows = [
|
||
[
|
||
<span className="font-semibold text-teal-400 font-mono whitespace-nowrap">
|
||
GW-01
|
||
</span>,
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">
|
||
Gateway
|
||
</span>,
|
||
<span className="font-mono text-slate-200">BACnet/IP</span>,
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">
|
||
Main LT panel
|
||
</span>,
|
||
<span className="font-mono text-slate-300">v2.4.1</span>,
|
||
<span className="font-mono text-slate-300">2 s ago</span>,
|
||
<StatusBadge
|
||
text="ONLINE"
|
||
color="bg-emerald-950/80 text-emerald-400 border border-emerald-800/50"
|
||
/>,
|
||
<div className="flex items-center gap-2">
|
||
<Button className="rounded-md border border-slate-700/60 bg-slate-900/40 px-3 py-1 text-xs text-slate-300 hover:bg-slate-800 hover:text-white transition">
|
||
Ping
|
||
</Button>
|
||
</div>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-teal-400 font-mono whitespace-nowrap">
|
||
GW-02
|
||
</span>,
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">
|
||
Gateway
|
||
</span>,
|
||
<span className="font-mono text-slate-200">Modbus TCP</span>,
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">
|
||
Chiller plant room
|
||
</span>,
|
||
<span className="font-mono text-slate-300">v2.4.1</span>,
|
||
<span className="font-mono text-slate-300">4 s ago</span>,
|
||
<StatusBadge
|
||
text="ONLINE"
|
||
color="bg-emerald-950/80 text-emerald-400 border border-emerald-800/50"
|
||
/>,
|
||
<div className="flex items-center gap-2">
|
||
<Button className="rounded-md border border-slate-700/60 bg-slate-900/40 px-3 py-1 text-xs text-slate-300 hover:bg-slate-800 hover:text-white transition">
|
||
Ping
|
||
</Button>
|
||
</div>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-teal-400 font-mono whitespace-nowrap">
|
||
CTL-11
|
||
</span>,
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">
|
||
Controller
|
||
</span>,
|
||
<span className="font-mono text-slate-200">BACnet MS/TP</span>,
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">
|
||
AHU-07 · Floor 5
|
||
</span>,
|
||
<span className="font-mono text-slate-300">v1.9.0</span>,
|
||
<span className="font-mono text-slate-300">1 s ago</span>,
|
||
<StatusBadge
|
||
text="ONLINE"
|
||
color="bg-emerald-950/80 text-emerald-400 border border-emerald-800/50"
|
||
/>,
|
||
<div className="flex items-center gap-2">
|
||
<Button className="rounded-md border border-slate-700/60 bg-slate-900/40 px-3 py-1 text-xs text-slate-300 hover:bg-slate-800 hover:text-white transition">
|
||
Ping
|
||
</Button>
|
||
</div>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-teal-400 font-mono whitespace-nowrap">
|
||
CTL-14
|
||
</span>,
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">
|
||
Controller
|
||
</span>,
|
||
<span className="font-mono text-slate-200">BACnet MS/TP</span>,
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">
|
||
AHU-09 · Basement
|
||
</span>,
|
||
<span className="font-mono text-slate-300">v1.7.2</span>,
|
||
<span className="font-mono text-slate-300">38 min ago</span>,
|
||
<StatusBadge
|
||
text="OFFLINE"
|
||
color="bg-rose-950/80 text-rose-400 border border-rose-800/50"
|
||
/>,
|
||
<div className="flex items-center gap-2">
|
||
<Button className="rounded-md border border-slate-700/60 bg-slate-900/40 px-3 py-1 text-xs text-slate-300 hover:bg-slate-800 hover:text-white transition">
|
||
Ping
|
||
</Button>
|
||
<Button className="rounded-md border border-slate-700/60 bg-slate-900/40 px-3 py-1 text-xs text-slate-300 hover:bg-slate-800 hover:text-white transition">
|
||
Restart
|
||
</Button>
|
||
</div>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-teal-400 font-mono whitespace-nowrap">
|
||
SNS-208
|
||
</span>,
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">
|
||
IAQ sensor
|
||
</span>,
|
||
<span className="font-mono text-slate-200">MQTT · LoRa</span>,
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">
|
||
Open office · L3
|
||
</span>,
|
||
<span className="font-mono text-slate-300">v3.1.0</span>,
|
||
<span className="font-mono text-slate-300">12 s ago</span>,
|
||
<StatusBadge
|
||
text="ONLINE"
|
||
color="bg-emerald-950/80 text-emerald-400 border border-emerald-800/50"
|
||
/>,
|
||
<div className="flex items-center gap-2">
|
||
<Button className="rounded-md border border-slate-700/60 bg-slate-900/40 px-3 py-1 text-xs text-slate-300 hover:bg-slate-800 hover:text-white transition">
|
||
Ping
|
||
</Button>
|
||
</div>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-teal-400 font-mono whitespace-nowrap">
|
||
SNS-231
|
||
</span>,
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">
|
||
Energy meter
|
||
</span>,
|
||
<span className="font-mono text-slate-200">Modbus RTU</span>,
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">
|
||
DG room
|
||
</span>,
|
||
<span className="font-mono text-slate-300">v3.0.4</span>,
|
||
<span className="font-mono text-slate-300">6 s ago</span>,
|
||
<StatusBadge
|
||
text="ONLINE"
|
||
color="bg-emerald-950/80 text-emerald-400 border border-emerald-800/50"
|
||
/>,
|
||
<div className="flex items-center gap-2">
|
||
<Button className="rounded-md border border-slate-700/60 bg-slate-900/40 px-3 py-1 text-xs text-slate-300 hover:bg-slate-800 hover:text-white transition">
|
||
Ping
|
||
</Button>
|
||
</div>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-teal-400 font-mono whitespace-nowrap">
|
||
SNS-244
|
||
</span>,
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">
|
||
Water meter
|
||
</span>,
|
||
<span className="font-mono text-slate-200">MQTT · NB-IoT</span>,
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">
|
||
Pump room
|
||
</span>,
|
||
<span className="font-mono text-slate-300">v3.1.0</span>,
|
||
<span className="font-mono text-slate-300">20 s ago</span>,
|
||
<StatusBadge
|
||
text="FW UPDATE"
|
||
color="bg-amber-950/80 text-amber-400 border border-amber-800/50"
|
||
/>,
|
||
<div className="flex items-center gap-2">
|
||
<Button className="rounded-md border border-slate-700/60 bg-slate-900/40 px-3 py-1 text-xs text-slate-300 hover:bg-slate-800 hover:text-white transition">
|
||
Ping
|
||
</Button>
|
||
</div>,
|
||
],
|
||
];
|
||
|
||
|
||
|
||
//Energy Utility in IOT app
|
||
export const energyUtilityHeaders = [
|
||
"METER",
|
||
"UTILITY",
|
||
"READING",
|
||
"LIVE",
|
||
"STATUS",
|
||
"LAST SYNC",
|
||
];
|
||
|
||
export const energyUtilityRows = [
|
||
[
|
||
<span className="font-bold text-teal-400 font-mono">
|
||
MTR-EB-01
|
||
</span>,
|
||
<div className="flex flex-col">
|
||
<span className="font-bold text-slate-100">Grid mains · EB</span>
|
||
<span className="text-[11px] text-[#5c738e] font-mono">Main LT panel</span>
|
||
</div>,
|
||
<span className="font-mono text-slate-200">4,82,110 kWh</span>,
|
||
<span className="font-bold text-teal-400 font-mono">312 kW</span>,
|
||
<StatusBadge
|
||
text="ONLINE"
|
||
color="bg-emerald-950/80 text-emerald-400 border border-emerald-800/50"
|
||
/>,
|
||
<span className="font-mono text-slate-300">4 s ago</span>,
|
||
],
|
||
|
||
[
|
||
<span className="font-bold text-teal-400 font-mono">
|
||
MTR-DG-01
|
||
</span>,
|
||
<div className="flex flex-col">
|
||
<span className="font-bold text-slate-100">DG set · 500 kVA</span>
|
||
<span className="text-[11px] text-[#5c738e] font-mono">DG yard</span>
|
||
</div>,
|
||
<span className="font-mono text-slate-200">18,240 kWh</span>,
|
||
<span className="font-bold text-teal-400 font-mono">0 kW</span>,
|
||
<StatusBadge
|
||
text="STANDBY"
|
||
color="bg-slate-800/80 text-sky-400 border border-sky-800/50"
|
||
/>,
|
||
<span className="font-mono text-slate-300">8 s ago</span>,
|
||
],
|
||
|
||
[
|
||
<span className="font-bold text-teal-400 font-mono">
|
||
MTR-SOL-01
|
||
</span>,
|
||
<div className="flex flex-col">
|
||
<span className="font-bold text-slate-100">Solar rooftop</span>
|
||
<span className="text-[11px] text-[#5c738e] font-mono">Terrace inverter room</span>
|
||
</div>,
|
||
<span className="font-mono text-slate-200">96,480 kWh</span>,
|
||
<span className="font-bold text-teal-400 font-mono">74 kW</span>,
|
||
<StatusBadge
|
||
text="ONLINE"
|
||
color="bg-emerald-950/80 text-emerald-400 border border-emerald-800/50"
|
||
/>,
|
||
<span className="font-mono text-slate-300">3 s ago</span>,
|
||
],
|
||
|
||
[
|
||
<span className="font-bold text-teal-400 font-mono">
|
||
MTR-WTR-01
|
||
</span>,
|
||
<div className="flex flex-col">
|
||
<span className="font-bold text-slate-100">Water · municipal</span>
|
||
<span className="text-[11px] text-[#5c738e] font-mono">Pump room inlet</span>
|
||
</div>,
|
||
<span className="font-mono text-slate-200">12,940 kL</span>,
|
||
<span className="font-bold text-teal-400 font-mono">2.1 kL/h</span>,
|
||
<StatusBadge
|
||
text="ONLINE"
|
||
color="bg-emerald-950/80 text-emerald-400 border border-emerald-800/50"
|
||
/>,
|
||
<span className="font-mono text-slate-300">11 s ago</span>,
|
||
],
|
||
|
||
[
|
||
<span className="font-bold text-teal-400 font-mono">
|
||
MTR-WTR-02
|
||
</span>,
|
||
<div className="flex flex-col">
|
||
<span className="font-bold text-slate-100">Water · borewell</span>
|
||
<span className="text-[11px] text-[#5c738e] font-mono">Pump room inlet</span>
|
||
</div>,
|
||
<span className="font-mono text-slate-200">3,410 kL</span>,
|
||
<span className="font-bold text-teal-400 font-mono">0.6 kL/h</span>,
|
||
<StatusBadge
|
||
text="ONLINE"
|
||
color="bg-emerald-950/80 text-emerald-400 border border-emerald-800/50"
|
||
/>,
|
||
<span className="font-mono text-slate-300">9 s ago</span>,
|
||
],
|
||
|
||
[
|
||
<span className="font-bold text-teal-400 font-mono">
|
||
MTR-GAS-01
|
||
</span>,
|
||
<div className="flex flex-col">
|
||
<span className="font-bold text-slate-100">LPG · kitchen bank</span>
|
||
<span className="text-[11px] text-[#5c738e] font-mono">Gas bank, B1</span>
|
||
</div>,
|
||
<span className="font-mono text-slate-200">1,880 kg</span>,
|
||
<span className="font-mono text-slate-500">—</span>,
|
||
<StatusBadge
|
||
text="OFFLINE"
|
||
color="bg-rose-950/80 text-rose-400 border border-rose-800/50"
|
||
/>,
|
||
<span className="font-mono text-slate-300">26 min ago</span>,
|
||
],
|
||
];
|
||
|
||
|
||
//connected asset in intelligence
|
||
export const connectedassetheaders = [
|
||
"Asset",
|
||
"Location",
|
||
"Now",
|
||
"Setpoint",
|
||
"Trend",
|
||
"Status",
|
||
"",
|
||
];
|
||
|
||
export const connectedassetrows = [
|
||
[
|
||
<span className="font-semibold text-cyan-400 whitespace-nowrap">
|
||
CASE-D12
|
||
</span>,
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">
|
||
Dairy case · Store 4, Mumbai
|
||
</span>,
|
||
<span className="font-semibold">3.1°C</span>,
|
||
"2–4°C",
|
||
<span className="font-mono text-slate-300">stable</span>,
|
||
<StatusBadge
|
||
text="Healthy"
|
||
color="bg-emerald-500/15 text-emerald-400"
|
||
/>,
|
||
<Button className="rounded-md border border-slate-700/60 px-4 py-1 text-slate-400 hover:bg-slate-800 hover:text-white transition">
|
||
Telemetry
|
||
</Button>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-cyan-400 whitespace-nowrap">
|
||
CASE-F03
|
||
</span>,
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">
|
||
Frozen island · Store 4, Mumbai
|
||
</span>,
|
||
<span className="font-semibold">-19.4°C</span>,
|
||
"≤ -18°C",
|
||
<span className="font-mono text-slate-300">stable</span>,
|
||
<StatusBadge
|
||
text="Healthy"
|
||
color="bg-emerald-500/15 text-emerald-400"
|
||
/>,
|
||
<Button className="rounded-md border border-slate-700/60 px-4 py-1 text-slate-400 hover:bg-slate-800 hover:text-white transition">
|
||
Telemetry
|
||
</Button>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-cyan-400 whitespace-nowrap">
|
||
CASE-D07
|
||
</span>,
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">
|
||
Dairy case · Store 9, Pune
|
||
</span>,
|
||
<span className="font-semibold">5.2°C</span>,
|
||
"2–4°C",
|
||
<span className="font-mono text-slate-300">+0.4°/h</span>,
|
||
<StatusBadge
|
||
text="Excursion"
|
||
color="bg-red-500/15 text-red-400"
|
||
/>,
|
||
<Button className="rounded-md border border-slate-700/60 px-4 py-1 text-slate-400 hover:bg-slate-800 hover:text-white transition">
|
||
Telemetry
|
||
</Button>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-cyan-400 whitespace-nowrap">
|
||
CHIL-02
|
||
</span>,
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">
|
||
Chiller · Horizon Tower
|
||
</span>,
|
||
<span className="font-semibold">6.8°C</span>,
|
||
"6–8°C",
|
||
<span className="font-mono text-slate-300">drifting</span>,
|
||
<StatusBadge
|
||
text="Watch"
|
||
color="bg-amber-500/15 text-amber-400"
|
||
/>,
|
||
<Button className="rounded-md border border-slate-700/60 px-4 py-1 text-slate-400 hover:bg-slate-800 hover:text-white transition">
|
||
Telemetry
|
||
</Button>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-cyan-400 whitespace-nowrap">
|
||
CASE-B01
|
||
</span>,
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">
|
||
Beverage cooler · Store 2, Delhi
|
||
</span>,
|
||
<span className="font-semibold">3.8°C</span>,
|
||
"2–4°C",
|
||
<span className="font-mono text-slate-300">stable</span>,
|
||
<StatusBadge
|
||
text="Healthy"
|
||
color="bg-emerald-500/15 text-emerald-400"
|
||
/>,
|
||
<Button className="rounded-md border border-slate-700/60 px-4 py-1 text-slate-400 hover:bg-slate-800 hover:text-white transition">
|
||
Telemetry
|
||
</Button>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-cyan-400 whitespace-nowrap">
|
||
AHU-07
|
||
</span>,
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">
|
||
AHU · Lakeside Campus
|
||
</span>,
|
||
<span className="font-semibold">12.1°C</span>,
|
||
"11–13°C",
|
||
<span className="font-mono text-slate-300">stable</span>,
|
||
<StatusBadge
|
||
text="Healthy"
|
||
color="bg-emerald-500/15 text-emerald-400"
|
||
/>,
|
||
<Button className="rounded-md border border-slate-700/60 px-4 py-1 text-slate-400 hover:bg-slate-800 hover:text-white transition">
|
||
Telemetry
|
||
</Button>,
|
||
],
|
||
];
|
||
//Connected Ops in intelligence
|
||
export const connectedheaders = [
|
||
"Site",
|
||
"Open WOs",
|
||
"SLA",
|
||
"Cost MTD",
|
||
"Vendor Score",
|
||
"Status",
|
||
];
|
||
|
||
export const connectedrows = [
|
||
[
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">
|
||
Horizon Tower · Mumbai
|
||
</span>,
|
||
"34",
|
||
<span className="font-semibold text-emerald-400">96%</span>,
|
||
"₹8.4 L",
|
||
"4.6 / 5",
|
||
<StatusBadge
|
||
text="Healthy"
|
||
color="bg-emerald-500/15 text-emerald-400"
|
||
/>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">
|
||
Lakeside Campus · Pune
|
||
</span>,
|
||
"51",
|
||
<span className="font-semibold text-amber-400">88%</span>,
|
||
"₹12.1 L",
|
||
"4.1 / 5",
|
||
<StatusBadge
|
||
text="Watch"
|
||
color="bg-amber-500/15 text-amber-400"
|
||
/>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">
|
||
Metro Business Park · Delhi
|
||
</span>,
|
||
"28",
|
||
<span className="font-semibold text-emerald-400">93%</span>,
|
||
"₹6.7 L",
|
||
"4.4 / 5",
|
||
<StatusBadge
|
||
text="Healthy"
|
||
color="bg-emerald-500/15 text-emerald-400"
|
||
/>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">
|
||
Coastal One · Chennai
|
||
</span>,
|
||
"63",
|
||
<span className="font-semibold text-red-400">74%</span>,
|
||
"₹15.8 L",
|
||
"3.2 / 5",
|
||
<StatusBadge
|
||
text="At Risk"
|
||
color="bg-red-500/15 text-red-400"
|
||
/>,
|
||
],
|
||
];
|
||
|
||
|
||
|
||
|
||
// Asset Health page in intelligence
|
||
|
||
|
||
|
||
export const assetHealthheaders = [
|
||
"Asset",
|
||
"Criticality",
|
||
"Health",
|
||
"MTBF",
|
||
"MTTR",
|
||
"Recommendation",
|
||
];
|
||
|
||
export const assetHealthrows = [
|
||
[
|
||
<div>
|
||
<div className="font-semibold text-slate-100">Main DB</div>
|
||
<div className="text-sm font-mono text-slate-400">
|
||
APP-1100 • Plumbing
|
||
</div>
|
||
</div>,
|
||
<StatusBadge
|
||
text="Normal"
|
||
color="bg-slate-700/50 text-slate-400"
|
||
/>,
|
||
<div className="flex items-center gap-3">
|
||
<div className="h-2 w-28 rounded-full bg-slate-700">
|
||
<div className="h-2 w-[88%] rounded-full bg-emerald-400" />
|
||
</div>
|
||
<span className="font-semibold text-emerald-400">88</span>
|
||
</div>,
|
||
"162d",
|
||
"3.5h",
|
||
"On PPM plan",
|
||
],
|
||
|
||
[
|
||
<div>
|
||
<div className="font-semibold text-slate-100">Main DB</div>
|
||
<div className="text-sm font-mono text-slate-400">
|
||
APP-1103 • Plumbing
|
||
</div>
|
||
</div>,
|
||
<StatusBadge
|
||
text="Normal"
|
||
color="bg-slate-700/50 text-slate-400"
|
||
/>,
|
||
<div className="flex items-center gap-3">
|
||
<div className="h-2 w-28 rounded-full bg-slate-700">
|
||
<div className="h-2 w-[93%] rounded-full bg-emerald-400" />
|
||
</div>
|
||
<span className="font-semibold text-emerald-400">93</span>
|
||
</div>,
|
||
"138d",
|
||
"6h",
|
||
"On PPM plan",
|
||
],
|
||
|
||
[
|
||
<div>
|
||
<div className="font-semibold text-slate-100">Cooling Tower</div>
|
||
<div className="text-sm font-mono text-slate-400">
|
||
APP-1106 • Electrical
|
||
</div>
|
||
</div>,
|
||
<StatusBadge
|
||
text="Important"
|
||
color="bg-amber-500/15 text-amber-400"
|
||
/>,
|
||
<div className="flex items-center gap-3">
|
||
<div className="h-2 w-28 rounded-full bg-slate-700">
|
||
<div className="h-2 w-[62%] rounded-full bg-amber-400" />
|
||
</div>
|
||
<span className="font-semibold text-amber-400">62</span>
|
||
</div>,
|
||
"186d",
|
||
"6h",
|
||
"Add condition check",
|
||
],
|
||
|
||
[
|
||
<div>
|
||
<div className="font-semibold text-slate-100">Chiller</div>
|
||
<div className="text-sm font-mono text-slate-400">
|
||
APP-1109 • Electrical
|
||
</div>
|
||
</div>,
|
||
<StatusBadge
|
||
text="Normal"
|
||
color="bg-slate-700/50 text-slate-400"
|
||
/>,
|
||
<div className="flex items-center gap-3">
|
||
<div className="h-2 w-28 rounded-full bg-slate-700">
|
||
<div className="h-2 w-[91%] rounded-full bg-emerald-400" />
|
||
</div>
|
||
<span className="font-semibold text-emerald-400">91</span>
|
||
</div>,
|
||
"282d",
|
||
"6h",
|
||
"On PPM plan",
|
||
],
|
||
|
||
[
|
||
<div>
|
||
<div className="font-semibold text-slate-100">Chiller</div>
|
||
<div className="text-sm font-mono text-slate-400">
|
||
APP-1112 • Plumbing
|
||
</div>
|
||
</div>,
|
||
<StatusBadge
|
||
text="Important"
|
||
color="bg-amber-500/15 text-amber-400"
|
||
/>,
|
||
<div className="flex items-center gap-3">
|
||
<div className="h-2 w-28 rounded-full bg-slate-700">
|
||
<div className="h-2 w-[82%] rounded-full bg-emerald-400" />
|
||
</div>
|
||
<span className="font-semibold text-emerald-400">82</span>
|
||
</div>,
|
||
"186d",
|
||
"5h",
|
||
"On PPM plan",
|
||
],
|
||
|
||
[
|
||
<div>
|
||
<div className="font-semibold text-slate-100">
|
||
Air Handling Unit
|
||
</div>
|
||
<div className="text-sm font-mono text-slate-400">
|
||
APP-1115 • Plumbing
|
||
</div>
|
||
</div>,
|
||
<StatusBadge
|
||
text="Important"
|
||
color="bg-amber-500/15 text-amber-400"
|
||
/>,
|
||
<div className="flex items-center gap-3">
|
||
<div className="h-2 w-28 rounded-full bg-slate-700">
|
||
<div className="h-2 w-[79%] rounded-full bg-amber-400" />
|
||
</div>
|
||
<span className="font-semibold text-amber-400">79</span>
|
||
</div>,
|
||
"306d",
|
||
"6.5h",
|
||
"Add condition check",
|
||
],
|
||
|
||
[
|
||
<div>
|
||
<div className="font-semibold text-slate-100">Main DB</div>
|
||
<div className="text-sm font-mono text-slate-400">
|
||
APP-1118 • Electrical
|
||
</div>
|
||
</div>,
|
||
<StatusBadge
|
||
text="Important"
|
||
color="bg-amber-500/15 text-amber-400"
|
||
/>,
|
||
<div className="flex items-center gap-3">
|
||
<div className="h-2 w-28 rounded-full bg-slate-700">
|
||
<div className="h-2 w-[72%] rounded-full bg-amber-400" />
|
||
</div>
|
||
<span className="font-semibold text-amber-400">72</span>
|
||
</div>,
|
||
"138d",
|
||
"2h",
|
||
"Add condition check",
|
||
],
|
||
|
||
[
|
||
<div>
|
||
<div className="font-semibold text-slate-100">Chiller</div>
|
||
<div className="text-sm font-mono text-slate-400">
|
||
APP-1121 • Electrical
|
||
</div>
|
||
</div>,
|
||
<StatusBadge
|
||
text="Important"
|
||
color="bg-amber-500/15 text-amber-400"
|
||
/>,
|
||
<div className="flex items-center gap-3">
|
||
<div className="h-2 w-28 rounded-full bg-slate-700">
|
||
<div className="h-2 w-[76%] rounded-full bg-amber-400" />
|
||
</div>
|
||
<span className="font-semibold text-amber-400">76</span>
|
||
</div>,
|
||
"138d",
|
||
"6h",
|
||
"Add condition check",
|
||
],
|
||
];
|
||
|
||
//visitor management page in workplace
|
||
|
||
|
||
export const visitorheaders = [
|
||
"Pass",
|
||
"Visitor",
|
||
"Company",
|
||
"Host",
|
||
"Purpose",
|
||
"Type",
|
||
"In",
|
||
"Out",
|
||
"Status",
|
||
"",
|
||
];
|
||
|
||
|
||
export const visitorrows = [
|
||
[
|
||
<span className="font-semibold text-[#2EE6C5]">VIS-4145</span>,
|
||
<span className="font-semibold text-slate-100">Rahul Mehta</span>,
|
||
"Voltas Ltd",
|
||
"Dhananjay T.",
|
||
"Maintenance visit",
|
||
<span className="px-3 py-1 rounded-lg bg-slate-900 border border-slate-700 text-xs">Contractor</span>,
|
||
"09:12",
|
||
"—",
|
||
<StatusBadge text="Checked-In" color="bg-emerald-500/15 text-emerald-400" />,
|
||
<Button className="text-teal-400 font-semibold hover:text-teal-300">Check out</Button>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-[#2EE6C5]">VIS-4146</span>,
|
||
<span className="font-semibold text-slate-100">Anita Desai</span>,
|
||
"Siemens",
|
||
"ME Local",
|
||
"Interview",
|
||
<span className="px-3 py-1 rounded-lg bg-slate-900 border border-slate-700 text-xs">Interview</span>,
|
||
"—",
|
||
"—",
|
||
<StatusBadge text="Expected" color="bg-blue-500/15 text-blue-400" />,
|
||
<Button className="text-emerald-400 font-semibold hover:text-emerald-300">Check in</Button>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-[#2EE6C5]">VIS-4147</span>,
|
||
<span className="font-semibold text-slate-100">Karthik R.</span>,
|
||
"Schindler",
|
||
"Site FM Lead",
|
||
"Client meeting",
|
||
<span className="px-3 py-1 rounded-lg bg-slate-900 border border-slate-700 text-xs">Guest</span>,
|
||
"08:05",
|
||
"10:40",
|
||
<StatusBadge text="Checked-Out" color="bg-slate-700 text-slate-400" />,
|
||
<span className="text-slate-500">—</span>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-[#2EE6C5]">VIS-4148</span>,
|
||
<span className="font-semibold text-slate-100">Priya Nair</span>,
|
||
"Amazon Logistics",
|
||
"Estates Office",
|
||
"Material delivery",
|
||
<span className="px-3 py-1 rounded-lg bg-slate-900 border border-slate-700 text-xs">Delivery</span>,
|
||
"—",
|
||
"—",
|
||
<StatusBadge text="Pre-Reg" color="bg-yellow-500/15 text-yellow-400" />,
|
||
<Button className="text-emerald-400 font-semibold hover:text-emerald-300">Check in</Button>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-[#2EE6C5]">VIS-4149</span>,
|
||
<span className="font-semibold text-slate-100">Imran Q.</span>,
|
||
"FreshMenu",
|
||
"TECH Local",
|
||
"AMC service",
|
||
<span className="px-3 py-1 rounded-lg bg-slate-900 border border-slate-700 text-xs">Contractor</span>,
|
||
"10:30",
|
||
"—",
|
||
<StatusBadge text="Checked-In" color="bg-emerald-500/15 text-emerald-400" />,
|
||
<Button className="text-teal-400 font-semibold hover:text-teal-300">Check out</Button>,
|
||
],
|
||
[
|
||
<span className="font-semibold text-[#2EE6C5]">VIS-4145</span>,
|
||
<span className="font-semibold text-slate-100">Rahul Mehta</span>,
|
||
"Voltas Ltd",
|
||
"Dhananjay T.",
|
||
"Maintenance visit",
|
||
<span className="px-3 py-1 rounded-lg bg-slate-900 border border-slate-700 text-xs">Contractor</span>,
|
||
"09:12",
|
||
"—",
|
||
<StatusBadge text="Checked-In" color="bg-emerald-500/15 text-emerald-400" />,
|
||
<Button className="text-teal-400 font-semibold hover:text-teal-300">Check out</Button>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-[#2EE6C5]">VIS-4146</span>,
|
||
<span className="font-semibold text-slate-100">Anita Desai</span>,
|
||
"Siemens",
|
||
"ME Local",
|
||
"Interview",
|
||
<span className="px-3 py-1 rounded-lg bg-slate-900 border border-slate-700 text-xs">Interview</span>,
|
||
"—",
|
||
"—",
|
||
<StatusBadge text="Expected" color="bg-blue-500/15 text-blue-400" />,
|
||
<Button className="text-emerald-400 font-semibold hover:text-emerald-300">Check in</Button>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-[#2EE6C5]">VIS-4147</span>,
|
||
<span className="font-semibold text-slate-100">Karthik R.</span>,
|
||
"Schindler",
|
||
"Site FM Lead",
|
||
"Client meeting",
|
||
<span className="px-3 py-1 rounded-lg bg-slate-900 border border-slate-700 text-xs">Guest</span>,
|
||
"08:05",
|
||
"10:40",
|
||
<StatusBadge text="Checked-Out" color="bg-slate-700 text-slate-400" />,
|
||
<span className="text-slate-500">—</span>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-[#2EE6C5]">VIS-4148</span>,
|
||
<span className="font-semibold text-slate-100">Priya Nair</span>,
|
||
"Amazon Logistics",
|
||
"Estates Office",
|
||
"Material delivery",
|
||
<span className="px-3 py-1 rounded-lg bg-slate-900 border border-slate-700 text-xs">Delivery</span>,
|
||
"—",
|
||
"—",
|
||
<StatusBadge text="Pre-Reg" color="bg-yellow-500/15 text-yellow-400" />,
|
||
<Button className="text-emerald-400 font-semibold hover:text-emerald-300">Check in</Button>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-[#2EE6C5]">VIS-4149</span>,
|
||
<span className="font-semibold text-slate-100">Imran Q.</span>,
|
||
"FreshMenu",
|
||
"TECH Local",
|
||
"AMC service",
|
||
<span className="px-3 py-1 rounded-lg bg-slate-900 border border-slate-700 text-xs">Contractor</span>,
|
||
"10:30",
|
||
"—",
|
||
<StatusBadge text="Checked-In" color="bg-emerald-500/15 text-emerald-400" />,
|
||
<Button className="text-teal-400 font-semibold hover:text-teal-300">Check out</Button>,
|
||
],
|
||
];
|
||
|
||
//Request page in operations
|
||
|
||
|
||
|
||
export const requestheaders = [
|
||
"Request No.",
|
||
"Department",
|
||
"Issue",
|
||
"Location",
|
||
"Assignee",
|
||
"Source",
|
||
"Status",
|
||
];
|
||
export const requestrows = [
|
||
[
|
||
<span className="font-semibold text-[#2EE6C5]">TFM/AP/2026/1009</span>,
|
||
"Electrical",
|
||
"Lighting out",
|
||
"Block 1 · G",
|
||
"ME Local",
|
||
<span className="font-mono">Line</span>,
|
||
<StatusBadge
|
||
text="Overdue"
|
||
color="bg-red-500/15 text-red-400"
|
||
/>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-[#2EE6C5]">TFM/AP/2026/1016</span>,
|
||
"HVAC",
|
||
"AHU not cooling",
|
||
"Lobby · 1",
|
||
"Dhananjay T.",
|
||
<span className="font-mono">Walk-in</span>,
|
||
<StatusBadge
|
||
text="Registered"
|
||
color="bg-blue-500/15 text-blue-400"
|
||
/>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-[#2EE6C5]">TFM/AP/2026/1023</span>,
|
||
"HVAC",
|
||
"Thermostat fault",
|
||
"Block 1 · 1",
|
||
"ME Local",
|
||
<span className="font-mono">Mobile app</span>,
|
||
<StatusBadge
|
||
text="Assigned"
|
||
color="bg-blue-500/15 text-blue-400"
|
||
/>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-[#2EE6C5]">TFM/AP/2026/1030</span>,
|
||
"HVAC",
|
||
"Thermostat fault",
|
||
"Block 1 · 1",
|
||
"Dhananjay T.",
|
||
<span className="font-mono">Mobile app</span>,
|
||
<StatusBadge
|
||
text="Working"
|
||
color="bg-amber-500/15 text-amber-400"
|
||
/>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-[#2EE6C5]">TFM/AP/2026/1037</span>,
|
||
"Civil",
|
||
"Glass break",
|
||
"Block 1 · 1",
|
||
"Local Helpdesk",
|
||
<span className="font-mono">Walk-in</span>,
|
||
<StatusBadge
|
||
text="Completed"
|
||
color="bg-emerald-500/15 text-emerald-400"
|
||
/>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-[#2EE6C5]">TFM/AP/2026/1044</span>,
|
||
"HVAC",
|
||
"Chiller alarm",
|
||
"Block 1 · 1",
|
||
"Dhananjay T.",
|
||
<span className="font-mono">Mobile app</span>,
|
||
<StatusBadge
|
||
text="Overdue"
|
||
color="bg-red-500/15 text-red-400"
|
||
/>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-[#2EE6C5]">TFM/AP/2026/1051</span>,
|
||
"Plumbing",
|
||
"Water leakage",
|
||
"Lobby · 1",
|
||
"Local Helpdesk",
|
||
<span className="font-mono">Walk-in</span>,
|
||
<StatusBadge
|
||
text="Registered"
|
||
color="bg-blue-500/15 text-blue-400"
|
||
/>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-[#2EE6C5]">TFM/AP/2026/1058</span>,
|
||
"Civil",
|
||
"Glass break",
|
||
"Block 2 · 2",
|
||
"Dhananjay T.",
|
||
<span className="font-mono">Walk-in</span>,
|
||
<StatusBadge
|
||
text="Assigned"
|
||
color="bg-blue-500/15 text-blue-400"
|
||
/>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-[#2EE6C5]">TFM/AP/2026/1065</span>,
|
||
"Civil",
|
||
"Ceiling crack",
|
||
"Lobby · G",
|
||
"ME Local",
|
||
<span className="font-mono">Line</span>,
|
||
<StatusBadge
|
||
text="Working"
|
||
color="bg-amber-500/15 text-amber-400"
|
||
/>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-[#2EE6C5]">TFM/AP/2026/1072</span>,
|
||
"Plumbing",
|
||
"Water leakage",
|
||
"Block 2 · G",
|
||
"TECH Local",
|
||
<span className="font-mono">Line</span>,
|
||
<StatusBadge
|
||
text="Completed"
|
||
color="bg-emerald-500/15 text-emerald-400"
|
||
/>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-[#2EE6C5]">TFM/AP/2026/1079</span>,
|
||
"Electrical",
|
||
"DB switch fault",
|
||
"Tower A · 1",
|
||
"TECH Local",
|
||
<span className="font-mono">Mobile app</span>,
|
||
<StatusBadge
|
||
text="Overdue"
|
||
color="bg-red-500/15 text-red-400"
|
||
/>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-[#2EE6C5]">TFM/AP/2026/1086</span>,
|
||
"HVAC",
|
||
"AHU not cooling",
|
||
"Lobby · 3",
|
||
"TECH Local",
|
||
<span className="font-mono">Walk-in</span>,
|
||
<StatusBadge
|
||
text="Registered"
|
||
color="bg-blue-500/15 text-blue-400"
|
||
/>,
|
||
],
|
||
];
|
||
|
||
|
||
|
||
//helpdesk in page
|
||
|
||
export const helpdeskheaders = [
|
||
"",
|
||
"Block",
|
||
"Floor",
|
||
"Zone",
|
||
"Department",
|
||
"Location",
|
||
"Window",
|
||
"TAT",
|
||
"Sched.",
|
||
"Approval",
|
||
"Status",
|
||
"Actions",
|
||
];
|
||
|
||
const checkbox = (
|
||
<input
|
||
type="checkbox"
|
||
className="h-4 w-4 appearance-none rounded border border-slate-600 bg-slate-700 checked:bg-slate-500 checked:border-slate-500 cursor-pointer"
|
||
/>
|
||
);
|
||
|
||
export const helpdeskrows = [
|
||
[
|
||
checkbox,
|
||
"Block 2",
|
||
"1",
|
||
"Z2",
|
||
"HVAC",
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">Parking P1</span>,
|
||
<span className="font-mono text-xs whitespace-nowrap">01:56–18:00</span>,
|
||
"60m",
|
||
"4",
|
||
<span className="text-emerald-400 font-semibold whitespace-nowrap">✓ Yes</span>,
|
||
<StatusBadge
|
||
text="Inactive"
|
||
color="bg-slate-700/50 text-slate-400"
|
||
/>,
|
||
<ActionButtons />,
|
||
],
|
||
|
||
[
|
||
checkbox,
|
||
"Block 1",
|
||
"2",
|
||
"Z1",
|
||
"Inspection work",
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">Cafeteria</span>,
|
||
<span className="font-mono text-xs whitespace-nowrap">01:56–23:59</span>,
|
||
"360m",
|
||
"6",
|
||
<span className="text-slate-500">—</span>,
|
||
<StatusBadge
|
||
text="Active"
|
||
color="bg-emerald-500/15 text-emerald-400"
|
||
/>,
|
||
<ActionButtons />,
|
||
],
|
||
|
||
[
|
||
checkbox,
|
||
"Block 2",
|
||
"G",
|
||
"N",
|
||
"Inspection work",
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">Main lobby</span>,
|
||
<span className="font-mono text-xs whitespace-nowrap">08:00–23:59</span>,
|
||
"360m",
|
||
"4",
|
||
<span className="text-emerald-400 font-semibold whitespace-nowrap">✓ Yes</span>,
|
||
<StatusBadge
|
||
text="Active"
|
||
color="bg-emerald-500/15 text-emerald-400"
|
||
/>,
|
||
<ActionButtons />,
|
||
],
|
||
|
||
[
|
||
checkbox,
|
||
"Block 1",
|
||
"2",
|
||
"Z2",
|
||
"Electrical",
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">Reception</span>,
|
||
<span className="font-mono text-xs whitespace-nowrap">08:00–18:00</span>,
|
||
"360m",
|
||
"4",
|
||
<span className="text-slate-500">—</span>,
|
||
<StatusBadge
|
||
text="Inactive"
|
||
color="bg-slate-700/50 text-slate-400"
|
||
/>,
|
||
<ActionButtons />,
|
||
],
|
||
|
||
[
|
||
checkbox,
|
||
"Block 2",
|
||
"3",
|
||
"Z1",
|
||
"Housekeeping",
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">Cafeteria</span>,
|
||
<span className="font-mono text-xs whitespace-nowrap">08:00–18:00</span>,
|
||
"20m",
|
||
"8",
|
||
<span className="text-emerald-400 font-semibold whitespace-nowrap">✓ Yes</span>,
|
||
<StatusBadge
|
||
text="Active"
|
||
color="bg-emerald-500/15 text-emerald-400"
|
||
/>,
|
||
<ActionButtons />,
|
||
],
|
||
|
||
[
|
||
checkbox,
|
||
"Block 1",
|
||
"3",
|
||
"Z1",
|
||
"Electrical",
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">Food court</span>,
|
||
<span className="font-mono text-xs whitespace-nowrap">08:00–17:30</span>,
|
||
"20m",
|
||
"8",
|
||
<span className="text-slate-500">—</span>,
|
||
<StatusBadge
|
||
text="Active"
|
||
color="bg-emerald-500/15 text-emerald-400"
|
||
/>,
|
||
<ActionButtons />,
|
||
],
|
||
|
||
[
|
||
checkbox,
|
||
"Block 2",
|
||
"1",
|
||
"Z2",
|
||
"HVAC",
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">Parking P1</span>,
|
||
<span className="font-mono text-xs whitespace-nowrap">01:56–18:00</span>,
|
||
"60m",
|
||
"4",
|
||
<span className="text-emerald-400 font-semibold whitespace-nowrap">✓ Yes</span>,
|
||
<StatusBadge
|
||
text="Inactive"
|
||
color="bg-slate-700/50 text-slate-400"
|
||
/>,
|
||
<ActionButtons />,
|
||
],
|
||
|
||
[
|
||
checkbox,
|
||
"Block 1",
|
||
"2",
|
||
"Z1",
|
||
"Inspection work",
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">Cafeteria</span>,
|
||
<span className="font-mono text-xs whitespace-nowrap">01:56–23:59</span>,
|
||
"360m",
|
||
"6",
|
||
<span className="text-slate-500">—</span>,
|
||
<StatusBadge
|
||
text="Active"
|
||
color="bg-emerald-500/15 text-emerald-400"
|
||
/>,
|
||
<ActionButtons />,
|
||
],
|
||
|
||
[
|
||
checkbox,
|
||
"Block 2",
|
||
"G",
|
||
"N",
|
||
"Inspection work",
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">Main lobby</span>,
|
||
<span className="font-mono text-xs whitespace-nowrap">08:00–23:59</span>,
|
||
"360m",
|
||
"4",
|
||
<span className="text-emerald-400 font-semibold whitespace-nowrap">✓ Yes</span>,
|
||
<StatusBadge
|
||
text="Active"
|
||
color="bg-emerald-500/15 text-emerald-400"
|
||
/>,
|
||
<ActionButtons/>,
|
||
],
|
||
|
||
[
|
||
checkbox,
|
||
"Block 1",
|
||
"2",
|
||
"Z2",
|
||
"Electrical",
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">Reception</span>,
|
||
<span className="font-mono text-xs whitespace-nowrap">08:00–18:00</span>,
|
||
"360m",
|
||
"4",
|
||
<span className="text-slate-500">—</span>,
|
||
<StatusBadge
|
||
text="Inactive"
|
||
color="bg-slate-700/50 text-slate-400"
|
||
/>,
|
||
<ActionButtons />,
|
||
],
|
||
|
||
[
|
||
checkbox,
|
||
"Block 2",
|
||
"3",
|
||
"Z1",
|
||
"Housekeeping",
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">Cafeteria</span>,
|
||
<span className="font-mono text-xs whitespace-nowrap">08:00–18:00</span>,
|
||
"20m",
|
||
"8",
|
||
<span className="text-emerald-400 font-semibold whitespace-nowrap">✓ Yes</span>,
|
||
<StatusBadge
|
||
text="Active"
|
||
color="bg-emerald-500/15 text-emerald-400"
|
||
/>,
|
||
<ActionButtons />,
|
||
],
|
||
|
||
[
|
||
checkbox,
|
||
"Block 1",
|
||
"3",
|
||
"Z1",
|
||
"Electrical",
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">Food court</span>,
|
||
<span className="font-mono text-xs whitespace-nowrap">08:00–17:30</span>,
|
||
"20m",
|
||
"8",
|
||
<span className="text-slate-500">—</span>,
|
||
<StatusBadge
|
||
text="Active"
|
||
color="bg-emerald-500/15 text-emerald-400"
|
||
/>,
|
||
<ActionButtons />,
|
||
],
|
||
];
|
||
|
||
//Equipment Page in operations
|
||
export const equipmentheaders = [
|
||
"Code",
|
||
"Equipment",
|
||
"Group",
|
||
"Block · Floor",
|
||
"Service Provider",
|
||
"Criticality",
|
||
"PPM Status",
|
||
"Actions",
|
||
];
|
||
|
||
|
||
export const equipmentrows = [
|
||
[
|
||
<span className="font-semibold text-teal-400">APP-1100</span>,
|
||
<span className="font-bold text-slate-100">Cooling Tower</span>,
|
||
"Electrical",
|
||
"Block 1 · 2",
|
||
"Blue Star",
|
||
"Important",
|
||
<StatusBadge text="Working" color="bg-amber-950/60 text-amber-400 border border-amber-800/30" />,
|
||
<ActionButtons />,
|
||
],
|
||
[
|
||
<span className="font-semibold text-teal-400">APP-1103</span>,
|
||
<span className="font-bold text-slate-100">Air Handling Unit</span>,
|
||
"Plumbing",
|
||
"Tower A · 1",
|
||
"Blue Star",
|
||
<StatusBadge text="Critical" color="bg-rose-950/60 text-rose-400 border border-rose-800/30" />,
|
||
<StatusBadge text="Completed" color="bg-emerald-950/60 text-emerald-400 border border-emerald-800/30" />,
|
||
<ActionButtons />,
|
||
],
|
||
[
|
||
<span className="font-semibold text-teal-400">APP-1106</span>,
|
||
<span className="font-bold text-slate-100">VRV Outdoor</span>,
|
||
"Electrical",
|
||
"Tower A · G",
|
||
"Voltas",
|
||
<StatusBadge text="Critical" color="bg-rose-950/60 text-rose-400 border border-rose-800/30" />,
|
||
<StatusBadge text="Completed" color="bg-emerald-950/60 text-emerald-400 border border-emerald-800/30" />,
|
||
<ActionButtons />,
|
||
],
|
||
[
|
||
<span className="font-semibold text-teal-400">APP-1109</span>,
|
||
<span className="font-bold text-slate-100">VRV Outdoor</span>,
|
||
"HVAC",
|
||
"Tower A · 1",
|
||
"Voltas",
|
||
"Normal",
|
||
<StatusBadge text="Overdue" color="bg-rose-950/60 text-rose-400 border border-rose-800/30" />,
|
||
<ActionButtons />,
|
||
],
|
||
[
|
||
<span className="font-semibold text-teal-400">APP-1112</span>,
|
||
<span className="font-bold text-slate-100">Air Handling Unit</span>,
|
||
"HVAC",
|
||
"Tower A · G",
|
||
"In-house",
|
||
<StatusBadge text="Critical" color="bg-rose-950/60 text-rose-400 border border-rose-800/30" />,
|
||
<StatusBadge text="Completed" color="bg-emerald-950/60 text-emerald-400 border border-emerald-800/30" />,
|
||
<ActionButtons />,
|
||
],
|
||
[
|
||
<span className="font-semibold text-teal-400">APP-1115</span>,
|
||
<span className="font-bold text-slate-100">Air Handling Unit</span>,
|
||
"Electrical",
|
||
"Tower A · 2",
|
||
"Voltas",
|
||
<StatusBadge text="Critical" color="bg-rose-950/60 text-rose-400 border border-rose-800/30" />,
|
||
<StatusBadge text="Completed" color="bg-emerald-950/60 text-emerald-400 border border-emerald-800/30" />,
|
||
<ActionButtons />,
|
||
],
|
||
[
|
||
<span className="font-semibold text-teal-400">APP-1118</span>,
|
||
<span className="font-bold text-slate-100">Chiller</span>,
|
||
"Electrical",
|
||
"Block 1 · 1",
|
||
"In-house",
|
||
"Important",
|
||
<StatusBadge text="Overdue" color="bg-rose-950/60 text-rose-400 border border-rose-800/30" />,
|
||
<ActionButtons />,
|
||
],
|
||
[
|
||
<span className="font-semibold text-teal-400">APP-1121</span>,
|
||
<span className="font-bold text-slate-100">Cooling Tower</span>,
|
||
"Plumbing",
|
||
"Tower A · 1",
|
||
"Blue Star",
|
||
"Normal",
|
||
<StatusBadge text="Completed" color="bg-emerald-950/60 text-emerald-400 border border-emerald-800/30" />,
|
||
<ActionButtons />,
|
||
],
|
||
];
|
||
|
||
|
||
// Energy page in Operartions
|
||
export const meterHeaders = [
|
||
"Meter",
|
||
"Name",
|
||
"Location",
|
||
"Type",
|
||
"MF",
|
||
"",
|
||
];
|
||
|
||
export const meterRows = [
|
||
[
|
||
<span className="font-semibold text-teal-400">MTR-1</span>,
|
||
<span className="font-semibold text-slate-100">Electricity main 1</span>,
|
||
"Block riser",
|
||
"Electricity",
|
||
"10",
|
||
<div className="flex gap-2">
|
||
<Button className="rounded-md border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
Reading
|
||
</Button>
|
||
<Button className="rounded-md border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
QR
|
||
</Button>
|
||
</div>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-teal-400">MTR-2</span>,
|
||
<span className="font-semibold text-slate-100">Water main 2</span>,
|
||
"Block riser",
|
||
"Water",
|
||
"100",
|
||
<div className="flex gap-2">
|
||
<Button className="rounded-md border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
Reading
|
||
</Button>
|
||
<Button className="rounded-md border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
QR
|
||
</Button>
|
||
</div>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-teal-400">MTR-3</span>,
|
||
<span className="font-semibold text-slate-100">Diesel main 3</span>,
|
||
"Block riser",
|
||
"Diesel",
|
||
"10",
|
||
<div className="flex gap-2">
|
||
<Button className="rounded-md border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
Reading
|
||
</Button>
|
||
<Button className="rounded-md border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
QR
|
||
</Button>
|
||
</div>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-teal-400">MTR-4</span>,
|
||
<span className="font-semibold text-slate-100">Electricity main 4</span>,
|
||
"Block riser",
|
||
"Electricity",
|
||
"1",
|
||
<div className="flex gap-2">
|
||
<Button className="rounded-md border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
Reading
|
||
</Button>
|
||
<Button className="rounded-md border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
QR
|
||
</Button>
|
||
</div>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-teal-400">MTR-5</span>,
|
||
<span className="font-semibold text-slate-100">Water main 5</span>,
|
||
"Block riser",
|
||
"Water",
|
||
"10",
|
||
<div className="flex gap-2">
|
||
<Button className="rounded-md border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
Reading
|
||
</Button>
|
||
<Button className="rounded-md border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
QR
|
||
</Button>
|
||
</div>,
|
||
],
|
||
];
|
||
|
||
export const readingHeaders = [
|
||
"Meter",
|
||
"Prev",
|
||
"Current",
|
||
"Cons.",
|
||
"UOM",
|
||
];
|
||
|
||
export const readingRows = [
|
||
[
|
||
"MTR-1",
|
||
"40.00",
|
||
"58.00",
|
||
<span className="font-semibold text-teal-400">180.0</span>,
|
||
<span className="font-semibold">kWh</span>,
|
||
],
|
||
|
||
[
|
||
"MTR-2",
|
||
"49.00",
|
||
"69.00",
|
||
<span className="font-semibold text-teal-400">2000.0</span>,
|
||
<span className="font-semibold">kL</span>,
|
||
],
|
||
|
||
[
|
||
"MTR-3",
|
||
"58.00",
|
||
"80.00",
|
||
<span className="font-semibold text-teal-400">220.0</span>,
|
||
<span className="font-semibold">L</span>,
|
||
],
|
||
|
||
[
|
||
"MTR-4",
|
||
"67.00",
|
||
"91.00",
|
||
<span className="font-semibold text-teal-400">24.0</span>,
|
||
<span className="font-semibold">kWh</span>,
|
||
],
|
||
|
||
[
|
||
"MTR-5",
|
||
"76.00",
|
||
"102.00",
|
||
<span className="font-semibold text-teal-400">260.0</span>,
|
||
<span className="font-semibold">kL</span>,
|
||
],
|
||
];
|
||
//Report page in Insight
|
||
export const reportheaders = [
|
||
"Code",
|
||
"Equipment",
|
||
"Group",
|
||
"Block · Floor",
|
||
"Service Provider",
|
||
"Manufacturer",
|
||
"Model",
|
||
];
|
||
|
||
export const reportrows = [
|
||
[
|
||
<span className="font-semibold text-teal-400 whitespace-nowrap">APP-1100</span>,
|
||
<span className="font-semibold whitespace-nowrap">Cooling Tower</span>,
|
||
"Electrical",
|
||
"Block 1 · 2",
|
||
"Blue Star",
|
||
"Kirloskar",
|
||
<span className="font-mono text-slate-400">M-550</span>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-teal-400 whitespace-nowrap">APP-1103</span>,
|
||
<span className="font-semibold whitespace-nowrap">Air Handling Unit</span>,
|
||
"Plumbing",
|
||
"Tower A · 1",
|
||
"Blue Star",
|
||
"Voltas",
|
||
<span className="font-mono text-slate-400">M-550</span>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-teal-400 whitespace-nowrap">APP-1106</span>,
|
||
<span className="font-semibold whitespace-nowrap">VRV Outdoor</span>,
|
||
"Electrical",
|
||
"Tower A · G",
|
||
"Voltas",
|
||
"Daikin",
|
||
<span className="font-mono text-slate-400">M-320</span>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-teal-400 whitespace-nowrap">APP-1109</span>,
|
||
<span className="font-semibold whitespace-nowrap">VRV Outdoor</span>,
|
||
"HVAC",
|
||
"Tower A · 1",
|
||
"Voltas",
|
||
"Blue Star",
|
||
<span className="font-mono text-slate-400">M-320</span>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-teal-400 whitespace-nowrap">APP-1112</span>,
|
||
<span className="font-semibold whitespace-nowrap">Air Handling Unit</span>,
|
||
"HVAC",
|
||
"Tower A · G",
|
||
"In-house",
|
||
"Voltas",
|
||
<span className="font-mono text-slate-400">M-550</span>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-teal-400 whitespace-nowrap">APP-1115</span>,
|
||
<span className="font-semibold whitespace-nowrap">Air Handling Unit</span>,
|
||
"Electrical",
|
||
"Tower A · 2",
|
||
"Voltas",
|
||
"Daikin",
|
||
<span className="font-mono text-slate-400">M-XR9</span>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-teal-400 whitespace-nowrap">APP-1118</span>,
|
||
<span className="font-semibold whitespace-nowrap">Chiller</span>,
|
||
"Electrical",
|
||
"Block 1 · 1",
|
||
"In-house",
|
||
"Blue Star",
|
||
<span className="font-mono text-slate-400">M-XR9</span>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-teal-400 whitespace-nowrap">APP-1121</span>,
|
||
<span className="font-semibold whitespace-nowrap">Cooling Tower</span>,
|
||
"Plumbing",
|
||
"Tower A · 1",
|
||
"Blue Star",
|
||
"Daikin",
|
||
<span className="font-mono text-slate-400">M-550</span>,
|
||
],
|
||
];
|
||
|
||
|
||
//Cost Invoice Page
|
||
const CostActionButton = ({ text }: { text: string }) => (
|
||
<Button className="rounded-lg border border-slate-700/60 bg-[#16243a] px-3 py-1.5 text-sm font-semibold text-slate-300 hover:bg-slate-700 transition">
|
||
{text}
|
||
</Button>
|
||
);
|
||
|
||
export const costInvoiceheaders = [
|
||
"Invoice",
|
||
"Client",
|
||
"Period",
|
||
"Amount",
|
||
"Raised",
|
||
"Due",
|
||
"Status",
|
||
"",
|
||
];
|
||
|
||
export const costInvoicerows = [
|
||
[
|
||
<span className="font-semibold text-[#2EE6C5]">INV-9040</span>,
|
||
<span className="font-semibold text-slate-100">Apple One Corp</span>,
|
||
"Jun 2026",
|
||
<span className="font-semibold">₹12.4 L</span>,
|
||
<span className="font-mono">Jun 5, 2026</span>,
|
||
<span className="font-mono">Jul 5, 2026</span>,
|
||
<StatusBadge
|
||
text="Paid"
|
||
color="bg-emerald-500/15 text-emerald-400"
|
||
/>,
|
||
<span className="text-slate-500">—</span>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-[#2EE6C5]">INV-9041</span>,
|
||
<span className="font-semibold text-slate-100">Novotel F&B</span>,
|
||
"Jun 2026",
|
||
<span className="font-semibold">₹8.6 L</span>,
|
||
<span className="font-mono">Jun 9, 2026</span>,
|
||
<span className="font-mono">Jul 9, 2026</span>,
|
||
<StatusBadge
|
||
text="Sent"
|
||
color="bg-amber-500/15 text-amber-400"
|
||
/>,
|
||
<CostActionButton text="Mark paid" />,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-[#2EE6C5]">INV-9042</span>,
|
||
<span className="font-semibold text-slate-100">SRM Estates</span>,
|
||
"Jun 2026",
|
||
<span className="font-semibold">₹4.3 L</span>,
|
||
<span className="font-mono">Jun 13, 2026</span>,
|
||
<span className="font-mono">Jul 13, 2026</span>,
|
||
<StatusBadge
|
||
text="Overdue"
|
||
color="bg-red-500/15 text-red-400"
|
||
/>,
|
||
<CostActionButton text="Mark paid" />,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-[#2EE6C5]">INV-9043</span>,
|
||
<span className="font-semibold text-slate-100">Local Mart</span>,
|
||
"Jun 2026",
|
||
<span className="font-semibold">₹21.0 L</span>,
|
||
<span className="font-mono">Jun 17, 2026</span>,
|
||
<span className="font-mono">Jul 17, 2026</span>,
|
||
<StatusBadge
|
||
text="Paid"
|
||
color="bg-emerald-500/15 text-emerald-400"
|
||
/>,
|
||
<span className="text-slate-500">—</span>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-[#2EE6C5]">INV-9044</span>,
|
||
<span className="font-semibold text-slate-100">Regus Spaces</span>,
|
||
"Jun 2026",
|
||
<span className="font-semibold">₹6.8 L</span>,
|
||
<span className="font-mono">Jun 21, 2026</span>,
|
||
<span className="font-mono">Jul 21, 2026</span>,
|
||
<StatusBadge
|
||
text="Draft"
|
||
color="bg-slate-700/60 text-slate-400"
|
||
/>,
|
||
<CostActionButton text="Send" />,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-[#2EE6C5]">INV-9105</span>,
|
||
<span className="font-semibold text-slate-100">Apple One Corp</span>,
|
||
"Jun 2026",
|
||
<span className="font-semibold">₹12.4 L</span>,
|
||
<span className="font-mono">Jun 5, 2026</span>,
|
||
<span className="font-mono">Jul 5, 2026</span>,
|
||
<StatusBadge
|
||
text="Sent"
|
||
color="bg-amber-500/15 text-amber-400"
|
||
/>,
|
||
<CostActionButton text="Mark paid" />,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-[#2EE6C5]">INV-9106</span>,
|
||
<span className="font-semibold text-slate-100">Novotel F&B</span>,
|
||
"Jun 2026",
|
||
<span className="font-semibold">₹8.6 L</span>,
|
||
<span className="font-mono">Jun 9, 2026</span>,
|
||
<span className="font-mono">Jul 9, 2026</span>,
|
||
<StatusBadge
|
||
text="Draft"
|
||
color="bg-slate-700/60 text-slate-400"
|
||
/>,
|
||
<CostActionButton text="Send" />,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-[#2EE6C5]">INV-9107</span>,
|
||
<span className="font-semibold text-slate-100">SRM Estates</span>,
|
||
"Jun 2026",
|
||
<span className="font-semibold">₹4.3 L</span>,
|
||
<span className="font-mono">Jun 13, 2026</span>,
|
||
<span className="font-mono">Jul 13, 2026</span>,
|
||
<StatusBadge
|
||
text="Draft"
|
||
color="bg-slate-700/60 text-slate-400"
|
||
/>,
|
||
<CostActionButton text="Send" />,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-[#2EE6C5]">INV-9108</span>,
|
||
<span className="font-semibold text-slate-100">Local Mart</span>,
|
||
"Jun 2026",
|
||
<span className="font-semibold">₹21.0 L</span>,
|
||
<span className="font-mono">Jun 17, 2026</span>,
|
||
<span className="font-mono">Jul 17, 2026</span>,
|
||
<StatusBadge
|
||
text="Paid"
|
||
color="bg-emerald-500/15 text-emerald-400"
|
||
/>,
|
||
<span className="text-slate-500">—</span>,
|
||
],
|
||
[
|
||
<span className="font-semibold text-[#2EE6C5]">INV-9107</span>,
|
||
<span className="font-semibold text-slate-100">SRM Estates</span>,
|
||
"Jun 2026",
|
||
<span className="font-semibold">₹4.3 L</span>,
|
||
<span className="font-mono">Jun 13, 2026</span>,
|
||
<span className="font-mono">Jul 13, 2026</span>,
|
||
<StatusBadge
|
||
text="Draft"
|
||
color="bg-slate-700/60 text-slate-400"
|
||
/>,
|
||
<CostActionButton text="Send" />,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-[#2EE6C5]">INV-9108</span>,
|
||
<span className="font-semibold text-slate-100">Local Mart</span>,
|
||
"Jun 2026",
|
||
<span className="font-semibold">₹21.0 L</span>,
|
||
<span className="font-mono">Jun 17, 2026</span>,
|
||
<span className="font-mono">Jul 17, 2026</span>,
|
||
<StatusBadge
|
||
text="Paid"
|
||
color="bg-emerald-500/15 text-emerald-400"
|
||
/>,
|
||
<span className="text-slate-500">—</span>,
|
||
],
|
||
];
|
||
|
||
|
||
//Training Page
|
||
|
||
export const trainingheaders = [
|
||
"Course",
|
||
"Type",
|
||
"Completed",
|
||
"Progress",
|
||
"Renewal",
|
||
"Status",
|
||
"",
|
||
];
|
||
|
||
export const trainingrows = [
|
||
[
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">
|
||
Fire safety & evacuation
|
||
</span>,
|
||
<span className="rounded-md border border-slate-700 bg-slate-900 px-3 py-1 text-xs font-mono text-slate-300">
|
||
Mandatory
|
||
</span>,
|
||
"44/48",
|
||
<div className="w-44">
|
||
<div className="h-2 rounded-full bg-slate-700">
|
||
<div className="h-2 w-[88%] rounded-full bg-teal-400" />
|
||
</div>
|
||
</div>,
|
||
<span className="font-mono">Annual</span>,
|
||
<StatusBadge
|
||
text="Compliant"
|
||
color="bg-emerald-500/15 text-emerald-400"
|
||
/>,
|
||
<Button className="rounded-md border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
Mark complete
|
||
</Button>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">
|
||
Working at height
|
||
</span>,
|
||
<span className="rounded-md border border-slate-700 bg-slate-900 px-3 py-1 text-xs font-mono text-slate-300">
|
||
Mandatory
|
||
</span>,
|
||
"12/16",
|
||
<div className="w-44">
|
||
<div className="h-2 rounded-full bg-slate-700">
|
||
<div className="h-2 w-[75%] rounded-full bg-teal-400" />
|
||
</div>
|
||
</div>,
|
||
<span className="font-mono">2 years</span>,
|
||
<StatusBadge
|
||
text="Due"
|
||
color="bg-amber-500/15 text-amber-400"
|
||
/>,
|
||
<Button className="rounded-md border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
Mark complete
|
||
</Button>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">
|
||
Electrical LOTO
|
||
</span>,
|
||
<span className="rounded-md border border-slate-700 bg-slate-900 px-3 py-1 text-xs font-mono text-slate-300">
|
||
Mandatory
|
||
</span>,
|
||
"12/12",
|
||
<div className="w-44">
|
||
<div className="h-2 rounded-full bg-slate-700">
|
||
<div className="h-2 w-full rounded-full bg-emerald-400" />
|
||
</div>
|
||
</div>,
|
||
<span className="font-mono">2 years</span>,
|
||
<StatusBadge
|
||
text="Certified"
|
||
color="bg-emerald-500/15 text-emerald-400"
|
||
/>,
|
||
<Button className="rounded-md border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
Certificate
|
||
</Button>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">
|
||
First aid & CPR
|
||
</span>,
|
||
<span className="rounded-md border border-slate-700 bg-slate-900 px-3 py-1 text-xs font-mono text-slate-300">
|
||
Optional
|
||
</span>,
|
||
"9/20",
|
||
<div className="w-44">
|
||
<div className="h-2 rounded-full bg-slate-700">
|
||
<div className="h-2 w-[45%] rounded-full bg-amber-400" />
|
||
</div>
|
||
</div>,
|
||
<span className="font-mono">3 years</span>,
|
||
<StatusBadge
|
||
text="Due"
|
||
color="bg-amber-500/15 text-amber-400"
|
||
/>,
|
||
<Button className="rounded-md border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
Mark complete
|
||
</Button>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">
|
||
New-joiner onboarding
|
||
</span>,
|
||
<span className="rounded-md border border-slate-700 bg-slate-900 px-3 py-1 text-xs font-mono text-slate-300">
|
||
Onboarding
|
||
</span>,
|
||
"5/6",
|
||
<div className="w-44">
|
||
<div className="h-2 rounded-full bg-slate-700">
|
||
<div className="h-2 w-[83%] rounded-full bg-teal-400" />
|
||
</div>
|
||
</div>,
|
||
<span className="font-mono">—</span>,
|
||
<StatusBadge
|
||
text="Compliant"
|
||
color="bg-emerald-500/15 text-emerald-400"
|
||
/>,
|
||
<Button className="rounded-md border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
Mark complete
|
||
</Button>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">
|
||
ISO 41001 awareness
|
||
</span>,
|
||
<span className="rounded-md border border-slate-700 bg-slate-900 px-3 py-1 text-xs font-mono text-slate-300">
|
||
Optional
|
||
</span>,
|
||
"21/30",
|
||
<div className="w-44">
|
||
<div className="h-2 rounded-full bg-slate-700">
|
||
<div className="h-2 w-[65%] rounded-full bg-amber-400" />
|
||
</div>
|
||
</div>,
|
||
<span className="font-mono">—</span>,
|
||
<StatusBadge
|
||
text="Due"
|
||
color="bg-amber-500/15 text-amber-400"
|
||
/>,
|
||
<Button className="rounded-md border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
Mark complete
|
||
</Button>,
|
||
],
|
||
];
|
||
|
||
|
||
|
||
//Statutory Compliance Page
|
||
export const statutoryheaders = [
|
||
"Obligation",
|
||
"Category",
|
||
"Authority",
|
||
"Site",
|
||
"Expiry",
|
||
"Expires In",
|
||
"Docs",
|
||
"Status",
|
||
"Actions",
|
||
];
|
||
|
||
export const statutoryrows = [
|
||
[
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">Fire NOC</span>,
|
||
<span className="rounded-md border border-slate-700 bg-slate-900 px-3 py-1 font-mono text-xs text-slate-300">Statutory · Fire</span>,
|
||
"Fire Dept.",
|
||
"HQ Tower",
|
||
<span className="font-mono">Oct 1, 2026</span>,
|
||
<span className="font-semibold text-emerald-400">120 days</span>,
|
||
<span className="text-emerald-400 font-semibold">✓ 1</span>,
|
||
<StatusBadge text="Compliant" color="bg-emerald-500/15 text-emerald-400" />,
|
||
<ActionButtons />,
|
||
],
|
||
[
|
||
<span className="font-semibold text-slate-100">Lift License</span>,
|
||
<span className="rounded-md border border-slate-700 bg-slate-900 px-3 py-1 font-mono text-xs text-slate-300">Statutory · Lifts</span>,
|
||
"Inspectorate",
|
||
"HQ Tower",
|
||
<span className="font-mono">Oct 2, 2026</span>,
|
||
<span className="font-semibold text-red-400">24 days</span>,
|
||
<span className="text-slate-500">—</span>,
|
||
<StatusBadge text="Due" color="bg-amber-500/15 text-amber-400" />,
|
||
<ActionButtons />,
|
||
],
|
||
[
|
||
<span className="font-semibold text-slate-100">Pressure Vessel Cert (IBR)</span>,
|
||
<span className="rounded-md border border-slate-700 bg-slate-900 px-3 py-1 font-mono text-xs text-slate-300">Statutory · Pressure</span>,
|
||
"Boiler Board",
|
||
"Plant",
|
||
<span className="font-mono">Jun 22, 2026</span>,
|
||
<span className="font-semibold text-red-500">Expired 8d</span>,
|
||
<span className="text-slate-500">—</span>,
|
||
<StatusBadge text="Expired" color="bg-red-500/15 text-red-400" />,
|
||
<ActionButtons />,
|
||
],
|
||
[
|
||
<span className="font-semibold text-slate-100">Pollution Consent (CTO)</span>,
|
||
<span className="rounded-md border border-slate-700 bg-slate-900 px-3 py-1 font-mono text-xs text-slate-300">Environmental</span>,
|
||
"Pollution Board",
|
||
"Plant",
|
||
<span className="font-mono">Oct 4, 2026</span>,
|
||
<span className="font-semibold text-amber-400">75 days</span>,
|
||
<span className="text-emerald-400 font-semibold">✓ 1</span>,
|
||
<StatusBadge text="Compliant" color="bg-emerald-500/15 text-emerald-400" />,
|
||
<ActionButtons />,
|
||
],
|
||
[
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">Fire NOC</span>,
|
||
<span className="rounded-md border border-slate-700 bg-slate-900 px-3 py-1 font-mono text-xs text-slate-300">Statutory · Fire</span>,
|
||
"Fire Dept.",
|
||
"HQ Tower",
|
||
<span className="font-mono">Oct 1, 2026</span>,
|
||
<span className="font-semibold text-emerald-400">120 days</span>,
|
||
<span className="text-emerald-400 font-semibold">✓ 1</span>,
|
||
<StatusBadge text="Compliant" color="bg-emerald-500/15 text-emerald-400" />,
|
||
<ActionButtons />,
|
||
],
|
||
[
|
||
<span className="font-semibold text-slate-100">Lift License</span>,
|
||
<span className="rounded-md border border-slate-700 bg-slate-900 px-3 py-1 font-mono text-xs text-slate-300">Statutory · Lifts</span>,
|
||
"Inspectorate",
|
||
"HQ Tower",
|
||
<span className="font-mono">Oct 2, 2026</span>,
|
||
<span className="font-semibold text-red-400">24 days</span>,
|
||
<span className="text-slate-500">—</span>,
|
||
<StatusBadge text="Due" color="bg-amber-500/15 text-amber-400" />,
|
||
<ActionButtons />,
|
||
],
|
||
[
|
||
<span className="font-semibold text-slate-100">Pressure Vessel Cert (IBR)</span>,
|
||
<span className="rounded-md border border-slate-700 bg-slate-900 px-3 py-1 font-mono text-xs text-slate-300">Statutory · Pressure</span>,
|
||
"Boiler Board",
|
||
"Plant",
|
||
<span className="font-mono">Jun 22, 2026</span>,
|
||
<span className="font-semibold text-red-500">Expired 8d</span>,
|
||
<span className="text-slate-500">—</span>,
|
||
<StatusBadge text="Expired" color="bg-red-500/15 text-red-400" />,
|
||
<ActionButtons />,
|
||
],
|
||
[
|
||
<span className="font-semibold text-slate-100">Pollution Consent (CTO)</span>,
|
||
<span className="rounded-md border border-slate-700 bg-slate-900 px-3 py-1 font-mono text-xs text-slate-300">Environmental</span>,
|
||
"Pollution Board",
|
||
"Plant",
|
||
<span className="font-mono">Oct 4, 2026</span>,
|
||
<span className="font-semibold text-amber-400">75 days</span>,
|
||
<span className="text-emerald-400 font-semibold">✓ 1</span>,
|
||
<StatusBadge text="Compliant" color="bg-emerald-500/15 text-emerald-400" />,
|
||
<ActionButtons />,
|
||
],
|
||
];
|
||
|
||
|
||
|
||
//Fire And Safety Page
|
||
|
||
export const firesafetyheaders = [
|
||
"Equipment",
|
||
"Location",
|
||
"Qty",
|
||
"Next Due",
|
||
"Status",
|
||
"",
|
||
];
|
||
|
||
export const firesafetyrows = [
|
||
[
|
||
<span className="font-semibold text-slate-100">
|
||
Fire extinguishers
|
||
<br />
|
||
(CO2/DCP)
|
||
</span>,
|
||
"All floors",
|
||
"84",
|
||
<span className="font-mono whitespace-nowrap">
|
||
Jul 14,
|
||
<br />
|
||
2026
|
||
</span>,
|
||
<StatusBadge
|
||
text="Compliant"
|
||
color="bg-emerald-500/15 text-emerald-400"
|
||
/>,
|
||
<Button className="rounded-lg border border-slate-700 px-4 py-1.5 text-slate-300 hover:bg-slate-800">
|
||
Re-inspect
|
||
</Button>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-slate-100">
|
||
Smoke & heat detectors
|
||
</span>,
|
||
"Plant + floors",
|
||
"212",
|
||
<span className="font-mono whitespace-nowrap">
|
||
Jun 30,
|
||
<br />
|
||
2026
|
||
</span>,
|
||
<StatusBadge
|
||
text="Due"
|
||
color="bg-amber-500/15 text-amber-400"
|
||
/>,
|
||
<Button className="rounded-lg border border-slate-700 px-4 py-1.5 text-slate-300 hover:bg-slate-800">
|
||
Inspect
|
||
</Button>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-slate-100">
|
||
Sprinkler system
|
||
</span>,
|
||
<span>
|
||
Basement +
|
||
<br />
|
||
atrium
|
||
</span>,
|
||
"1",
|
||
<span className="font-mono whitespace-nowrap">
|
||
Aug 02,
|
||
<br />
|
||
2026
|
||
</span>,
|
||
<StatusBadge
|
||
text="Compliant"
|
||
color="bg-emerald-500/15 text-emerald-400"
|
||
/>,
|
||
<Button className="rounded-lg border border-slate-700 px-4 py-1.5 text-slate-300 hover:bg-slate-800">
|
||
Re-inspect
|
||
</Button>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-slate-100">
|
||
Fire hydrants & hose reels
|
||
</span>,
|
||
"External + risers",
|
||
"18",
|
||
<span className="font-mono whitespace-nowrap">
|
||
Jun 28,
|
||
<br />
|
||
2026
|
||
</span>,
|
||
<StatusBadge
|
||
text="Due"
|
||
color="bg-amber-500/15 text-amber-400"
|
||
/>,
|
||
<Button className="rounded-lg border border-slate-700 px-4 py-1.5 text-slate-300 hover:bg-slate-800">
|
||
Inspect
|
||
</Button>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-slate-100">
|
||
Emergency lighting
|
||
</span>,
|
||
"Stairwells",
|
||
"46",
|
||
<span className="font-mono whitespace-nowrap">
|
||
Sep 10,
|
||
<br />
|
||
2026
|
||
</span>,
|
||
<StatusBadge
|
||
text="Compliant"
|
||
color="bg-emerald-500/15 text-emerald-400"
|
||
/>,
|
||
<Button className="rounded-lg border border-slate-700 bg-slate-900 px-4 py-1.5 text-slate-300 hover:bg-slate-800">
|
||
Re-inspect
|
||
</Button>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-slate-100">
|
||
Fire alarm panel
|
||
</span>,
|
||
"BMS room",
|
||
"2",
|
||
<span className="font-mono whitespace-nowrap">
|
||
Jul 01,
|
||
<br />
|
||
2026
|
||
</span>,
|
||
<StatusBadge
|
||
text="Compliant"
|
||
color="bg-emerald-500/15 text-emerald-400"
|
||
/>,
|
||
<Button className="rounded-lg border border-slate-700 px-4 py-1.5 text-slate-300 hover:bg-slate-800">
|
||
Re-inspect
|
||
</Button>,
|
||
],
|
||
];
|
||
|
||
|
||
|
||
// Contracts page
|
||
export const contractheaders = [
|
||
"Contract",
|
||
"Vendor",
|
||
"Scope",
|
||
"Value",
|
||
"SLA",
|
||
"Scorecard",
|
||
"Expires",
|
||
"",
|
||
];
|
||
|
||
export const contractrows = [
|
||
[
|
||
<span className="font-semibold text-teal-400 whitespace-nowrap">CTR-700</span>,
|
||
<span className="font-semibold text-slate-100">Voltas Ltd</span>,
|
||
"HVAC AMC",
|
||
<span className="font-mono">₹24.0 L</span>,
|
||
<span className="font-semibold text-emerald-400">98%</span>,
|
||
<span className="whitespace-nowrap text-amber-400">★★★★★ <span className="text-slate-500">4.6</span></span>,
|
||
<span className="font-semibold text-emerald-400">120 d</span>,
|
||
<div className="flex gap-2">
|
||
<Button className="rounded-lg border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
View
|
||
</Button>
|
||
</div>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-teal-400">CTR-701</span>,
|
||
<span className="font-semibold text-slate-100">Blue Star</span>,
|
||
"Elevator AMC",
|
||
<span className="font-mono">₹18.0 L</span>,
|
||
<span className="font-semibold text-amber-400">91%</span>,
|
||
<span className="whitespace-nowrap text-amber-400">★★★★☆ <span className="text-slate-500">4.1</span></span>,
|
||
<span className="font-semibold text-red-400">22 d</span>,
|
||
<div className="flex gap-2">
|
||
<Button className="rounded-lg border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
Renew
|
||
</Button>
|
||
<Button className="rounded-lg border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
View
|
||
</Button>
|
||
</div>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-teal-400">CTR-702</span>,
|
||
<span className="font-semibold text-slate-100">Sterling FM</span>,
|
||
"Soft services",
|
||
<span className="font-mono">₹36.0 L</span>,
|
||
<span className="font-semibold text-red-400">86%</span>,
|
||
<span className="whitespace-nowrap text-amber-400">★★★☆☆ <span className="text-slate-500">3.4</span></span>,
|
||
<span className="font-semibold text-amber-400">75 d</span>,
|
||
<div className="flex gap-2">
|
||
<Button className="rounded-lg border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
View
|
||
</Button>
|
||
</div>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-teal-400">CTR-703</span>,
|
||
<span className="font-semibold text-slate-100">OTIS Elevators</span>,
|
||
"DG maintenance",
|
||
<span className="font-mono">₹6.5 L</span>,
|
||
<span className="font-semibold text-red-400">79%</span>,
|
||
<span className="whitespace-nowrap text-amber-400">★★★☆☆ <span className="text-slate-500">2.9</span></span>,
|
||
<span className="font-semibold text-red-400">Expired</span>,
|
||
<div className="flex gap-2">
|
||
<Button className="rounded-lg border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
Renew
|
||
</Button>
|
||
<Button className="rounded-lg border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
View
|
||
</Button>
|
||
</div>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-teal-400">CTR-704</span>,
|
||
<span className="font-semibold text-slate-100">Sodexo</span>,
|
||
"Security services",
|
||
<span className="font-mono">₹42.0 L</span>,
|
||
<span className="font-semibold text-emerald-400">99%</span>,
|
||
<span className="whitespace-nowrap text-amber-400">★★★★★ <span className="text-slate-500">4.8</span></span>,
|
||
<span className="font-semibold text-emerald-400">210 d</span>,
|
||
<div className="flex gap-2">
|
||
<Button className="rounded-lg border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
View
|
||
</Button>
|
||
</div>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-teal-400">CTR-705</span>,
|
||
<span className="font-semibold text-slate-100">Securitas</span>,
|
||
"Pest control",
|
||
<span className="font-mono">₹4.2 L</span>,
|
||
<span className="font-semibold text-amber-400">94%</span>,
|
||
<span className="whitespace-nowrap text-amber-400">★★★★☆ <span className="text-slate-500">4.3</span></span>,
|
||
<span className="font-semibold text-amber-400">48 d</span>,
|
||
<div className="flex gap-2">
|
||
<Button className="rounded-lg border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
View
|
||
</Button>
|
||
</div>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-teal-400">CTR-726</span>,
|
||
<span className="font-semibold text-slate-100">Voltas Ltd</span>,
|
||
"HVAC AMC",
|
||
<span className="font-mono">₹24.0 L</span>,
|
||
<span className="font-semibold text-emerald-400">98%</span>,
|
||
<span className="whitespace-nowrap text-amber-400">★★★★★ <span className="text-slate-500">4.6</span></span>,
|
||
<span className="font-semibold text-emerald-400">120 d</span>,
|
||
<div className="flex gap-2">
|
||
<Button className="rounded-lg border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
View
|
||
</Button>
|
||
</div>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-teal-400">CTR-727</span>,
|
||
<span className="font-semibold text-slate-100">Blue Star</span>,
|
||
"Elevator AMC",
|
||
<span className="font-mono">₹18.0 L</span>,
|
||
<span className="font-semibold text-amber-400">91%</span>,
|
||
<span className="whitespace-nowrap text-amber-400">★★★★☆ <span className="text-slate-500">4.1</span></span>,
|
||
<span className="font-semibold text-red-400">22 d</span>,
|
||
<div className="flex gap-2">
|
||
<Button className="rounded-lg border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
Renew
|
||
</Button>
|
||
<Button className="rounded-lg border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
View
|
||
</Button>
|
||
</div>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-teal-400">CTR-728</span>,
|
||
<span className="font-semibold text-slate-100">Sterling FM</span>,
|
||
"Soft services",
|
||
<span className="font-mono">₹36.0 L</span>,
|
||
<span className="font-semibold text-red-400">86%</span>,
|
||
<span className="whitespace-nowrap text-amber-400">★★★☆☆ <span className="text-slate-500">3.4</span></span>,
|
||
<span className="font-semibold text-amber-400">75 d</span>,
|
||
<div className="flex gap-2">
|
||
<Button className="rounded-lg border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
View
|
||
</Button>
|
||
</div>,
|
||
],
|
||
];
|
||
|
||
|
||
// Audit ans Survey page
|
||
export const auditheaders = [
|
||
"Ref",
|
||
"Audit / Survey",
|
||
"Site",
|
||
"Score",
|
||
"Findings",
|
||
"Status",
|
||
"",
|
||
];
|
||
|
||
export const auditrows = [
|
||
[
|
||
<span className="font-semibold text-teal-400 whitespace-nowrap">
|
||
AUD-301
|
||
</span>,
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">
|
||
Safety walk
|
||
</span>,
|
||
"HQ Tower",
|
||
<span className="font-semibold text-emerald-400">92</span>,
|
||
"2",
|
||
<StatusBadge
|
||
text="Closed"
|
||
color="bg-slate-700/50 text-slate-400"
|
||
/>,
|
||
<Button className="rounded-md border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
Report
|
||
</Button>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-teal-400 whitespace-nowrap">
|
||
AUD-302
|
||
</span>,
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">
|
||
Housekeeping survey
|
||
</span>,
|
||
"HQ Tower",
|
||
<span className="font-semibold text-red-400">78</span>,
|
||
"5",
|
||
<StatusBadge
|
||
text="Open"
|
||
color="bg-amber-500/15 text-amber-400"
|
||
/>,
|
||
<div className="flex gap-2">
|
||
<Button className="rounded-md border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
Findings
|
||
</Button>
|
||
<Button className="rounded-md border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
Report
|
||
</Button>
|
||
</div>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-teal-400 whitespace-nowrap">
|
||
AUD-303
|
||
</span>,
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">
|
||
ISO 41001 internal
|
||
</span>,
|
||
"Annexe",
|
||
<span className="font-semibold text-amber-400">88</span>,
|
||
"3",
|
||
<StatusBadge
|
||
text="Open"
|
||
color="bg-amber-500/15 text-amber-400"
|
||
/>,
|
||
<div className="flex gap-2">
|
||
<Button className="rounded-md border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
Findings
|
||
</Button>
|
||
<Button className="rounded-md border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
Report
|
||
</Button>
|
||
</div>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-teal-400 whitespace-nowrap">
|
||
AUD-304
|
||
</span>,
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">
|
||
Energy audit
|
||
</span>,
|
||
"Plant",
|
||
<span className="font-semibold text-amber-400">81</span>,
|
||
"4",
|
||
<StatusBadge
|
||
text="Closed"
|
||
color="bg-slate-700/50 text-slate-400"
|
||
/>,
|
||
<Button className="rounded-md border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
Report
|
||
</Button>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-teal-400 whitespace-nowrap">
|
||
AUD-305
|
||
</span>,
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">
|
||
Vendor SLA review
|
||
</span>,
|
||
"All sites",
|
||
<span className="font-semibold text-emerald-400">95</span>,
|
||
"1",
|
||
<StatusBadge
|
||
text="Closed"
|
||
color="bg-slate-700/50 text-slate-400"
|
||
/>,
|
||
<Button className="rounded-md border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
Report
|
||
</Button>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-teal-400 whitespace-nowrap">
|
||
AUD-325
|
||
</span>,
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">
|
||
Safety walk
|
||
</span>,
|
||
"HQ Tower",
|
||
<span className="font-semibold text-emerald-400">92</span>,
|
||
"2",
|
||
<StatusBadge
|
||
text="Open"
|
||
color="bg-amber-500/15 text-amber-400"
|
||
/>,
|
||
<div className="flex gap-2">
|
||
<Button className="rounded-md border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
Findings
|
||
</Button>
|
||
<Button className="rounded-md border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
Report
|
||
</Button>
|
||
</div>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-teal-400 whitespace-nowrap">
|
||
AUD-326
|
||
</span>,
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">
|
||
Housekeeping survey
|
||
</span>,
|
||
"HQ Tower",
|
||
<span className="font-semibold text-red-400">78</span>,
|
||
"5",
|
||
<StatusBadge
|
||
text="Closed"
|
||
color="bg-slate-700/50 text-slate-400"
|
||
/>,
|
||
<Button className="rounded-md border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
Report
|
||
</Button>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-teal-400 whitespace-nowrap">
|
||
AUD-327
|
||
</span>,
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">
|
||
ISO 41001 internal
|
||
</span>,
|
||
"Annexe",
|
||
<span className="font-semibold text-amber-400">88</span>,
|
||
"3",
|
||
<StatusBadge
|
||
text="Open"
|
||
color="bg-amber-500/15 text-amber-400"
|
||
/>,
|
||
<div className="flex gap-2">
|
||
<Button className="rounded-md border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
Findings
|
||
</Button>
|
||
<Button className="rounded-md border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
Report
|
||
</Button>
|
||
</div>,
|
||
],
|
||
|
||
[
|
||
<span className="font-semibold text-teal-400 whitespace-nowrap">
|
||
AUD-328
|
||
</span>,
|
||
<span className="font-semibold text-slate-100 whitespace-nowrap">
|
||
Energy audit
|
||
</span>,
|
||
"Plant",
|
||
<span className="font-semibold text-amber-400">81</span>,
|
||
"4",
|
||
<StatusBadge
|
||
text="Open"
|
||
color="bg-amber-500/15 text-amber-400"
|
||
/>,
|
||
<div className="flex gap-2">
|
||
<Button className="rounded-md border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
Findings
|
||
</Button>
|
||
<Button className="rounded-md border border-slate-700 px-3 py-1 text-slate-300 hover:bg-slate-800">
|
||
Report
|
||
</Button>
|
||
</div>,
|
||
],
|
||
]; |