diff --git a/AppImage/components/system-overview.tsx b/AppImage/components/system-overview.tsx index 546b3c4..47c6c40 100644 --- a/AppImage/components/system-overview.tsx +++ b/AppImage/components/system-overview.tsx @@ -146,6 +146,13 @@ const fetchProxmoxStorageData = async (): Promise => } } +const getUnitsSettings = (): "Bytes" | "Bits" => { + const raw = localStorage.getItem("proxmenux-network-unit"); + const networkUnit = raw && raw.toLowerCase() === "bits" ? "Bits" : "Bytes"; + console.log("[v0] Loaded network unit from localStorage:", networkUnit); + return networkUnit; +}; + export function SystemOverview() { const [systemData, setSystemData] = useState(null) const [vmData, setVmData] = useState([]) @@ -161,6 +168,7 @@ export function SystemOverview() { const [error, setError] = useState(null) const [networkTimeframe, setNetworkTimeframe] = useState("day") const [networkTotals, setNetworkTotals] = useState<{ received: number; sent: number }>({ received: 0, sent: 0 }) + const [networkUnit, setNetworkUnit] = useState<"Bytes" | "Bits">("Bytes"); useEffect(() => { const fetchAllData = async () => { @@ -178,6 +186,9 @@ export function SystemOverview() { return } + const networkUnitSetting = getUnitsSettings(); + setNetworkUnit(networkUnitSetting); + setSystemData(systemResult) setVmData(vmResult) setStorageData(storageResults[0]) @@ -298,13 +309,19 @@ export function SystemOverview() { return (bytes / 1024 ** 3).toFixed(2) } - const formatStorage = (sizeInGB: number): string => { - if (sizeInGB < 1) { - return `${(sizeInGB * 1024).toFixed(1)} MB` - } else if (sizeInGB > 999) { - return `${(sizeInGB / 1024).toFixed(2)} TB` + const formatStorage = (sizeInGB: number, unit: "Bytes" | "Bits" = "Bytes"): string => { + let size = sizeInGB; + let sufix = "B"; + if (unit === "Bits") { + size = size * 8; + sufix = "b"; + } + if (size < 1) { + return `${(size * 1024).toFixed(1)} M${sufix}` + } else if (size > 999) { + return `${(size / 1024).toFixed(2)} T${sufix}` } else { - return `${sizeInGB.toFixed(2)} GB` + return `${size.toFixed(2)} G${sufix}` } } @@ -667,21 +684,21 @@ export function SystemOverview() {
Received: - ↓ {formatStorage(networkTotals.received)} + ↓ {formatStorage(networkTotals.received, networkUnit)} ({getTimeframeLabel(networkTimeframe)})
Sent: - ↑ {formatStorage(networkTotals.sent)} + ↑ {formatStorage(networkTotals.sent, networkUnit)} ({getTimeframeLabel(networkTimeframe)})
- +
) : (