diff --git a/public/index.html b/public/index.html index 004881a..ef88772 100644 --- a/public/index.html +++ b/public/index.html @@ -1162,7 +1162,7 @@ }, [potaSpots]); return ( -
+
{/* Map style selector */} @@ -2147,40 +2147,207 @@ ); } - // Modern Layout (default) + // Modern Layout (default) - Compact single-screen design return ( -
-
setShowSettings(true)} /> +
+ {/* TOP BAR - spans full width */} +
+ {/* Callsign & Settings */} +
+ setShowSettings(true)} + title="Click for settings" + > + {config.callsign} + + v3.3.0 +
+ + {/* UTC Clock */} +
+ UTC + {utcTime} + {utcDate} +
+ + {/* Local Clock */} +
+ LOCAL + {localTime} + {localDate} +
+ + {/* Solar Quick Stats */} +
+
SFI {spaceWeather.data?.solarFlux || '--'}
+
K = 4 ? 'var(--accent-red)' : 'var(--accent-green)', fontWeight: '600' }}>{spaceWeather.data?.kIndex ?? '--'}
+
SSN {spaceWeather.data?.sunspotNumber || '--'}
+
+ + {/* Settings Button */} + +
-
- {/* Row 1 */} - - - - + {/* LEFT SIDEBAR */} +
+ {/* DE Location */} +
+
📍 DE - YOUR LOCATION
+
+
{deGrid}
+
{config.location.lat.toFixed(2)}°, {config.location.lon.toFixed(2)}°
+
+ + {deSunTimes.sunrise} + + {deSunTimes.sunset} +
+
+
- {/* Row 2: Map + Side Panel */} -
- -
- Click anywhere on map to set DX location • Use buttons to change map style + {/* DX Location */} +
+
🎯 DX - TARGET
+
+
{dxGrid}
+
{dxLocation.lat.toFixed(2)}°, {dxLocation.lon.toFixed(2)}°
+
+ + {dxSunTimes.sunrise} + + {dxSunTimes.sunset} +
-
- - + + {/* Band Conditions - Compact */} +
+
📊 BAND CONDITIONS
+
+ {bandConditions.data.map(band => ( +
+
{band.band}
+
{band.status?.substring(0,4)}
+
+ ))} +
- {/* Row 3 */} - - - - -
- -
- OpenHamClock v3.3.0 | In memory of Elwood Downey WB0OEW | Map tiles © OpenStreetMap, ESRI, CARTO | 73 de {config.callsign} -
+ {/* Propagation Compact */} +
+
📡 PROPAGATION TO DX
+ {propagation.data ? ( +
+
+ {Math.round(propagation.data.distance).toLocaleString()} km path +
+ {propagation.data.currentBands.slice(0, 6).map(b => ( +
+ = 50 ? 'var(--accent-green)' : 'var(--text-muted)' }}>{b.band} +
+
= 70 ? '#00ff88' : b.reliability >= 50 ? '#88ff00' : b.reliability >= 30 ? '#ffcc00' : '#ff4444', borderRadius: '2px' }} /> +
+ = 50 ? 'var(--accent-green)' : 'var(--text-muted)' }}>{b.reliability}% +
+ ))} +
+ ) : ( +
Loading...
+ )} +
+
+ + {/* CENTER - MAP */} +
+ +
+ Click map to set DX • 73 de {config.callsign} +
+
+ + {/* RIGHT SIDEBAR */} +
+ {/* DX Cluster - Compact */} +
+
+ 🌐 DX CLUSTER ● LIVE +
+
+ {dxCluster.data.slice(0, 8).map((s, i) => ( +
+
+ {s.freq} + {s.call} + {s.time} +
+
+ ))} + {dxCluster.data.length === 0 &&
No spots
} +
+
+ + {/* POTA - Compact */} +
+
🏕 POTA ACTIVATORS
+
+ {potaSpots.data.slice(0, 5).map((a, i) => ( +
+ {a.call} + {a.ref} + {a.freq} +
+ ))} + {potaSpots.data.length === 0 &&
No activators
} +
+
+ + {/* Contests - Compact */} +
+
🏆 CONTESTS
+
+ {contests.data.slice(0, 6).map((c, i) => ( +
+
+ {c.name} {c.status === 'active' && } +
+
+ {c.mode} • {new Date(c.start).toLocaleDateString('en-US', { month: 'short', day: 'numeric' })} +
+
+ ))} +
+
+
{/* Settings Panel */}