diff --git a/Data/Server/WebUI/src/Device_Details.jsx b/Data/Server/WebUI/src/Device_Details.jsx index 6d9bdc6..b6cfffa 100644 --- a/Data/Server/WebUI/src/Device_Details.jsx +++ b/Data/Server/WebUI/src/Device_Details.jsx @@ -294,43 +294,53 @@ export default function DeviceDetails({ device, onBack }) { const rows = (details.storage || []).map((d) => { const total = toNum(d.total); - let usage = toNum(d.usage); + let usagePct = toNum(d.usage); + let usedBytes = toNum(d.used); + let freeBytes = toNum(d.free); let freePct; - if (usage !== undefined) { - if (usage <= 1) usage *= 100; - freePct = 100 - usage; - } else { - const freeRaw = toNum(d.free); - if (freeRaw !== undefined) { - if (freeRaw > 1 && freeRaw > 100 && total) { - freePct = (freeRaw / total) * 100; - } else if (freeRaw <= 1) { - freePct = freeRaw * 100; - } else { - freePct = freeRaw; - } - usage = freePct !== undefined ? 100 - freePct : undefined; - } else { - const usedRaw = toNum(d.used); - if (usedRaw !== undefined && total) { - usage = (usedRaw / total) * 100; - freePct = 100 - usage; - } - } + if (usagePct !== undefined) { + if (usagePct <= 1) usagePct *= 100; + freePct = 100 - usagePct; + } + + if (usedBytes === undefined && total !== undefined && usagePct !== undefined) { + usedBytes = (usagePct / 100) * total; + } + + if (freeBytes === undefined && total !== undefined && usedBytes !== undefined) { + freeBytes = total - usedBytes; + } + + if (freePct === undefined && total !== undefined && freeBytes !== undefined) { + freePct = (freeBytes / total) * 100; + } + + if (usagePct === undefined && freePct !== undefined) { + usagePct = 100 - freePct; } return { drive: d.drive, disk_type: d.disk_type, - usage, + used: usedBytes, + freePct, + freeBytes, total, - free: freePct, + usage: usagePct, }; }); if (!rows.length) - return placeholderTable(["Drive Letter", "Disk Type", "Usage", "Total Size", "Free %"]); + return placeholderTable([ + "Drive Letter", + "Disk Type", + "Used", + "Free %", + "Free GB", + "Total Size", + "Usage", + ]); return ( @@ -339,9 +349,11 @@ export default function DeviceDetails({ device, onBack }) { Drive Letter Disk Type - Usage - Total Size + Used Free % + Free GB + Total Size + Usage @@ -349,6 +361,26 @@ export default function DeviceDetails({ device, onBack }) { {d.drive} {d.disk_type} + + {d.used !== undefined && !Number.isNaN(d.used) + ? formatBytes(d.used) + : "unknown"} + + + {d.freePct !== undefined && !Number.isNaN(d.freePct) + ? `${d.freePct.toFixed(1)}%` + : "unknown"} + + + {d.freeBytes !== undefined && !Number.isNaN(d.freeBytes) + ? formatBytes(d.freeBytes) + : "unknown"} + + + {d.total !== undefined && !Number.isNaN(d.total) + ? formatBytes(d.total) + : "unknown"} + @@ -358,7 +390,7 @@ export default function DeviceDetails({ device, onBack }) { sx={{ height: 10, bgcolor: "#333", - "& .MuiLinearProgress-bar": { bgcolor: "#58a6ff" } + "& .MuiLinearProgress-bar": { bgcolor: "#00d18c" } }} /> @@ -369,16 +401,6 @@ export default function DeviceDetails({ device, onBack }) { - - {d.total !== undefined && !Number.isNaN(d.total) - ? formatBytes(d.total) - : "unknown"} - - - {d.free !== undefined && !Number.isNaN(d.free) - ? `${d.free.toFixed(1)}%` - : "unknown"} - ))}