diff --git a/plugins/sentinel/dashboard.html b/plugins/sentinel/dashboard.html index 34a6e0c..123a07a 100644 --- a/plugins/sentinel/dashboard.html +++ b/plugins/sentinel/dashboard.html @@ -71,7 +71,8 @@ #sentinel-grid.layout-row .part-mount { color:var(--text-dim);font-size:.65rem } #sentinel-grid.layout-row .part-bar { height:3px;border-radius:1px;background:var(--md-sys-color-surface-container-lowest);margin:2px 0 } #sentinel-grid.layout-row .part-bar-fill { height:100%;border-radius:1px;background:var(--primary);transition:width .6s } - #sentinel-grid.layout-row .part-pct { font-size:.6rem;color:var(--text-dim);text-align:right } + #sentinel-grid.layout-row .part-detail { display:flex;justify-content:space-between;font-size:.6rem;color:var(--text-dim) } + #sentinel-grid.layout-row .part-size { text-align:left } #sentinel-grid.layout-row .mtr-data .rlabel { font-size:.7rem;color:var(--text-dim);text-transform:uppercase;margin-right:6px } #sentinel-grid.layout-row .mtr-data .rval { font-weight:600 } #sentinel-grid.layout-row .mtr { display:flex;align-items:center;height:48px;padding:0 8px;margin-bottom:6px;position:relative } @@ -300,7 +301,7 @@ var parts = sysData.partitions || []; if (!diskList.querySelector('.part-row') || diskList.children.length !== parts.length) { diskList.innerHTML = parts.map(function(p){ - return '
'+esc(p.device||'?')+' '+esc(p.mount||'')+'
'+(p.percent||0).toFixed(0)+'%
'; + return '
'+esc(p.device||'?')+' '+esc(p.mount||'')+'
'+fmtSizeGB(p)+''+(p.percent||0).toFixed(0)+'%
'; }).join(''); } else { var rows = diskList.querySelectorAll('.part-row'); @@ -363,6 +364,8 @@ } function bar(v) { return v < 60 ? 'bar-green' : (v < 85 ? 'bar-yellow' : 'bar-red'); } + function fmtSizeGB(p) { var u=p.used_gb||0, t=p.total_gb||0; return fmtSize(u*1073741824)+' / '+fmtSize(t*1073741824); } + function fmtSize(bytes) { if(bytes===undefined||bytes===null)return'—'; bytes=Math.abs(bytes); if(bytes>=1e12)return(bytes/1e12).toFixed(1)+' TB'; if(bytes>=1e9)return(bytes/1e9).toFixed(1)+' GB'; if(bytes>=1e6)return(bytes/1e6).toFixed(1)+' MB'; if(bytes>=1e3)return(bytes/1e3).toFixed(1)+' KB'; return bytes.toFixed(0)+' B'; } function fmtSpeed(bps) { return bps<1024?bps.toFixed(0)+'B/s':(bps<1048576?(bps/1024).toFixed(0)+'K/s':(bps/1048576).toFixed(1)+'M/s'); } function esc(s) { return String(s).replace(/&/g,'&').replace(//g,'>').replace(/"/g,'"'); }