diff --git a/frontend/src/components/dashboard/PulseSensorCard.tsx b/frontend/src/components/dashboard/PulseSensorCard.tsx index 18f4098..fe10e6b 100644 --- a/frontend/src/components/dashboard/PulseSensorCard.tsx +++ b/frontend/src/components/dashboard/PulseSensorCard.tsx @@ -78,8 +78,8 @@ export function PulseSensorCard({ reading, history, thresholds, onClick }: Pulse onClick={handleClick} className={cn( "group relative overflow-hidden rounded-2xl cursor-pointer transition-all", - "bg-white dark:bg-gradient-to-br dark:from-slate-800/80 dark:to-slate-900/80", - "border border-slate-200 dark:border-slate-700/50 hover:border-emerald-500/50", + "bg-white dark:bg-zinc-900/80", + "border border-gray-200 dark:border-zinc-700/50 hover:border-emerald-500/50", "shadow-sm dark:shadow-xl hover:shadow-md dark:hover:shadow-2xl hover:shadow-emerald-500/10" )} > @@ -90,7 +90,7 @@ export function PulseSensorCard({ reading, history, thresholds, onClick }: Pulse
-
+
Temp
@@ -157,21 +157,21 @@ export function PulseSensorCard({ reading, history, thresholds, onClick }: Pulse

{reading.temperature.toFixed(1)}°

{/* Humidity */} -
-
+
+
RH

{reading.humidity.toFixed(0)}%

@@ -180,15 +180,15 @@ export function PulseSensorCard({ reading, history, thresholds, onClick }: Pulse {/* VPD */}
-
+
VPD

{reading.vpd.toFixed(2)}

@@ -197,11 +197,11 @@ export function PulseSensorCard({ reading, history, thresholds, onClick }: Pulse {/* Dewpoint Row */}
-
+
- Dewpoint: {reading.dewpoint.toFixed(1)}°F + Dewpoint: {reading.dewpoint.toFixed(1)}°F
-
+
View Details
@@ -210,7 +210,7 @@ export function PulseSensorCard({ reading, history, thresholds, onClick }: Pulse {/* Timestamp Footer */}
-
+
Last reading {readingTime.toLocaleTimeString([], { hour: '2-digit', minute: '2-digit' })} diff --git a/frontend/src/pages/EnvironmentReportPage.tsx b/frontend/src/pages/EnvironmentReportPage.tsx index 90396c8..a659947 100644 --- a/frontend/src/pages/EnvironmentReportPage.tsx +++ b/frontend/src/pages/EnvironmentReportPage.tsx @@ -308,7 +308,7 @@ export default function EnvironmentReportPage() { } `} -
+
{/* --- WEB DASHBOARD VIEW --- */}
@@ -383,16 +383,16 @@ export default function EnvironmentReportPage() { -
+
Avg Temperature
-

+

{reportData?.devices[0]?.stats.temperature.avg.toFixed(1) || '--'}°F

-

+

Range: {reportData?.devices[0]?.stats.temperature.min.toFixed(1)}° – {reportData?.devices[0]?.stats.temperature.max.toFixed(1)}°

@@ -401,16 +401,16 @@ export default function EnvironmentReportPage() { initial={{ opacity: 0, y: 20 }} animate={{ opacity: 1, y: 0 }} transition={{ delay: 0.1 }} - className="p-5 rounded-2xl bg-white dark:bg-slate-800/50 border border-slate-200 dark:border-slate-700/50 shadow-sm dark:shadow-none" + className="p-5 rounded-2xl bg-white dark:bg-zinc-900 border border-gray-200 dark:border-zinc-800 shadow-sm dark:shadow-none" > -
+
Avg Humidity

{reportData?.devices[0]?.stats.humidity.avg.toFixed(0) || '--'}%

-

+

Range: {reportData?.devices[0]?.stats.humidity.min.toFixed(0)}% – {reportData?.devices[0]?.stats.humidity.max.toFixed(0)}%

@@ -419,16 +419,16 @@ export default function EnvironmentReportPage() { initial={{ opacity: 0, y: 20 }} animate={{ opacity: 1, y: 0 }} transition={{ delay: 0.2 }} - className="p-5 rounded-2xl bg-white dark:bg-slate-800/50 border border-slate-200 dark:border-slate-700/50 shadow-sm dark:shadow-none" + className="p-5 rounded-2xl bg-white dark:bg-zinc-900 border border-gray-200 dark:border-zinc-800 shadow-sm dark:shadow-none" > -
+
Avg VPD

{reportData?.devices[0]?.stats.vpd.avg.toFixed(2) || '--'} kPa

-

+

Range: {reportData?.devices[0]?.stats.vpd.min.toFixed(2)} – {reportData?.devices[0]?.stats.vpd.max.toFixed(2)}

@@ -437,9 +437,9 @@ export default function EnvironmentReportPage() { initial={{ opacity: 0, y: 20 }} animate={{ opacity: 1, y: 0 }} transition={{ delay: 0.3 }} - className="p-5 rounded-2xl bg-white dark:bg-slate-800/50 border border-slate-200 dark:border-slate-700/50 shadow-sm dark:shadow-none" + className="p-5 rounded-2xl bg-white dark:bg-zinc-900 border border-gray-200 dark:border-zinc-800 shadow-sm dark:shadow-none" > -
+
Alerts
@@ -506,8 +506,8 @@ export default function EnvironmentReportPage() {
-
-

+
+

VPD Trend

@@ -520,10 +520,10 @@ export default function EnvironmentReportPage() { - - - - + + + + @@ -535,18 +535,18 @@ export default function EnvironmentReportPage() { {/* Hourly Breakdown */} {reportData?.hourlyBreakdown && reportData.hourlyBreakdown.length > 0 && ( -
-

+
+

Hourly Average Temperature

- - - - + + + + @@ -555,12 +555,12 @@ export default function EnvironmentReportPage() { )} {/* Device Summary Table */} -
-

Device Summary

+
+

Device Summary

- + @@ -568,11 +568,11 @@ export default function EnvironmentReportPage() { - + {reportData?.devices.map(device => ( - - + + @@ -591,8 +591,8 @@ export default function EnvironmentReportPage() { {/* Alert Summary */} {reportData?.alerts.byType && reportData.alerts.byType.length > 0 && ( -
-

+
+

Alert Summary

@@ -898,8 +898,8 @@ export default function EnvironmentReportPage() { {/* Recent Alerts List */} {reportData?.alertAnalytics?.recentAlerts && reportData.alertAnalytics.recentAlerts.length > 0 ? ( -

Device Readings Temp (Avg)VPD (Avg)
{device.name}{device.readings}{device.name}{device.readings} {device.stats.temperature.avg.toFixed(1)}°F
- +
+ @@ -908,10 +908,10 @@ export default function EnvironmentReportPage() { - + {reportData.alertAnalytics.recentAlerts.slice(0, 15).map((alert, idx) => ( - - + - - - + + @@ -932,12 +932,12 @@ export default function EnvironmentReportPage() {
Time SeverityDuration
+
{new Date(alert.createdAt).toLocaleTimeString([], { hour: '2-digit', minute: '2-digit', month: 'short', day: 'numeric' })} @@ -922,9 +922,9 @@ export default function EnvironmentReportPage() { {alert.severity} {alert.type.replace('_', ' ')}{alert.message} + {alert.type.replace('_', ' ')}{alert.message} {alert.resolutionTimeMin ? `${alert.resolutionTimeMin.toFixed(1)}m` : '-'}
) : ( -

No recent alerts found for this period.

+

No recent alerts found for this period.

)}
{/* Footer */} -
+

© {new Date().getFullYear()} Veridian Systems • Generated via Environment Operations Manager

diff --git a/frontend/src/pages/PulseTestPage.tsx b/frontend/src/pages/PulseTestPage.tsx index 5dafa4a..e1f6706 100644 --- a/frontend/src/pages/PulseTestPage.tsx +++ b/frontend/src/pages/PulseTestPage.tsx @@ -129,30 +129,30 @@ export default function PulseTestPage() { const currentReading = readings.find(r => r.deviceId === selectedDevice) || readings[0]; return ( -
+
{/* Header */}
-

+

- Pulse Sensor Analytics (v2) + Pulse Sensor Analytics (v3)

-

+

Real-time environmental monitoring with historical trends

{/* WebSocket Status */} -
+
{wsConnected ? ( ) : ( )} - + {wsConnected ? 'Live' : 'Offline'} {unreadCount > 0 && ( @@ -167,7 +167,7 @@ export default function PulseTestPage() { @@ -185,7 +185,7 @@ export default function PulseTestPage() {
{/* Live Readings Panel */}
-

Live Sensors

+

Live Sensors

{readings.map((reading) => ( setSelectedDevice(reading.deviceId)} className={`p-4 rounded-xl cursor-pointer transition-all shadow-sm ${selectedDevice === reading.deviceId ? 'bg-emerald-50 dark:bg-emerald-500/20 border-2 border-emerald-500/50' - : 'bg-white dark:bg-slate-800/50 border border-slate-200 dark:border-slate-700/50 hover:border-slate-300 dark:hover:border-slate-600' + : 'bg-white dark:bg-zinc-900/50 border border-gray-200 dark:border-zinc-800 hover:border-gray-300 dark:hover:border-zinc-700' }`} >
-

{reading.deviceName}

+

{reading.deviceName}

LIVE @@ -207,19 +207,19 @@ export default function PulseTestPage() {
-

Temp

+

Temp

{reading.temperature.toFixed(1)}°

-

RH

+

RH

{reading.humidity.toFixed(0)}%

-

VPD

+

VPD

{reading.vpd.toFixed(2)}

@@ -229,9 +229,9 @@ export default function PulseTestPage() { ))} {readings.length === 0 && !loading && ( -
- -

No sensors connected

+
+ +

No sensors connected

)}
@@ -244,11 +244,11 @@ export default function PulseTestPage() {
- Temperature + Temperature

{currentReading.temperature.toFixed(1)}°F @@ -259,11 +259,11 @@ export default function PulseTestPage() { initial={{ opacity: 0, y: 20 }} animate={{ opacity: 1, y: 0 }} transition={{ delay: 0.1 }} - className="p-5 rounded-2xl bg-white dark:bg-slate-800/30 border border-blue-100 dark:border-blue-500/10 shadow-sm dark:shadow-none" + className="p-5 rounded-2xl bg-white dark:bg-zinc-900 border border-blue-100 dark:border-blue-500/10 shadow-sm dark:shadow-none" >

- Humidity + Humidity

{currentReading.humidity.toFixed(0)}% @@ -274,27 +274,27 @@ export default function PulseTestPage() { initial={{ opacity: 0, y: 20 }} animate={{ opacity: 1, y: 0 }} transition={{ delay: 0.2 }} - className="p-5 rounded-2xl bg-white dark:bg-slate-800/30 border border-purple-100 dark:border-purple-500/10 shadow-sm dark:shadow-none" + className="p-5 rounded-2xl bg-white dark:bg-zinc-900 border border-purple-100 dark:border-purple-500/10 shadow-sm dark:shadow-none" >

- VPD + VPD

{currentReading.vpd.toFixed(2)}

-

kPa

+

kPa

- Dewpoint + Dewpoint

{currentReading.dewpoint.toFixed(1)}°F @@ -305,16 +305,16 @@ export default function PulseTestPage() { {/* Time Range Selector */}

-

+

Historical Trends

- +