client: create initial table definitions
These will (hopefully) be used to decide on the layout of the UI for each table.
This commit is contained in:
parent
5d0e480f1c
commit
36a96a84fd
4 changed files with 107 additions and 0 deletions
20
src/static/js/misc/human_filesize.mjs
Normal file
20
src/static/js/misc/human_filesize.mjs
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Converts a filesize into a human-readable string.
|
||||||
|
* Ported from PHP: https://github.com/sbrl/Pepperminty-Wiki/blob/0a81c940c5803856db250b29f54658476bc81e21/core/05-functions.php#L57-L73
|
||||||
|
* @see http://php.net/manual/en/function.filesize.php#106569 The original source
|
||||||
|
* @author rommel
|
||||||
|
* @author Edited by Starbeamrainbowlabs
|
||||||
|
* @param {number} bytes The number of bytes to convert.
|
||||||
|
* @param {number} decimals The number of decimal places to preserve.
|
||||||
|
* @return {string} A human-readable filesize.
|
||||||
|
*/
|
||||||
|
function human_filesize(bytes, decimals = 2) {
|
||||||
|
let sz = ["b", "kib", "mib", "gib", "tib", "pib", "eib", "yib", "zib"];
|
||||||
|
let factor = Math.floor((bytes.toString().length - 1) / 3);
|
||||||
|
let result = Math.round(bytes / (1024 ** factor), decimals);
|
||||||
|
return result + sz[factor];
|
||||||
|
}
|
||||||
|
|
||||||
|
export default human_filesize;
|
9
src/static/js/tabledefs.mjs
Normal file
9
src/static/js/tabledefs.mjs
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
import cpu from './tabledefs/cpu.mjs';
|
||||||
|
import cpu_live from './tabledefs/cpu_live.mjs';
|
||||||
|
|
||||||
|
export default {
|
||||||
|
cpu,
|
||||||
|
cpu_live
|
||||||
|
}
|
44
src/static/js/tabledefs/cpu.mjs
Normal file
44
src/static/js/tabledefs/cpu.mjs
Normal file
|
@ -0,0 +1,44 @@
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
import human_filesize from '../misc/human_filesize.mjs';
|
||||||
|
|
||||||
|
export default [
|
||||||
|
{
|
||||||
|
name: "Model",
|
||||||
|
type: "table",
|
||||||
|
content: "{{manufacturer}} {{brand}}"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Speed (GHz)",
|
||||||
|
type: "table",
|
||||||
|
content: {
|
||||||
|
"Speed": "{{speed}}",
|
||||||
|
"Speed (min)": "{{speedMin}}",
|
||||||
|
"Speed (max)": "{{speedMax}}",
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Core layout",
|
||||||
|
type: "table",
|
||||||
|
content: {
|
||||||
|
"Processors": "{{processors}}",
|
||||||
|
"Cores": "{{cores}}",
|
||||||
|
"Physical Cores": "{{physicalCores}}"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Governor",
|
||||||
|
type: "table",
|
||||||
|
content: "{{governor}}"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Cache",
|
||||||
|
type: "table",
|
||||||
|
content: {
|
||||||
|
"L1 (data)": (table) => `${human_filesize(table.cache.l1d)}`,
|
||||||
|
"L1 (instruction)": (table) => `${human_filesize(table.cache.l1i)}`,
|
||||||
|
"L2": (table) => `${human_filesize(table.cache.l2)}`,
|
||||||
|
"L3": (table) => `${human_filesize(table.cache.l3)}`,
|
||||||
|
}
|
||||||
|
},
|
||||||
|
];
|
34
src/static/js/tabledefs/cpu_live.mjs
Normal file
34
src/static/js/tabledefs/cpu_live.mjs
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
import human_filesize from '../misc/human_filesize.mjs';
|
||||||
|
|
||||||
|
export default [
|
||||||
|
{
|
||||||
|
name: "Frequency (GHz)",
|
||||||
|
type: "guage",
|
||||||
|
guage: { min: 0, max: 6 },
|
||||||
|
content: {
|
||||||
|
"min": "frequency.min",
|
||||||
|
"max": "frequency.max",
|
||||||
|
"average": "frequency.avg"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Frequency per-core (GHz)",
|
||||||
|
type: "guage",
|
||||||
|
guage: { min: 0, max: 6 },
|
||||||
|
content: (table) => table.frequency.cores
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Temperature (°C)",
|
||||||
|
type: "guage",
|
||||||
|
guage: { min: 0, max: 100 },
|
||||||
|
content: "main",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Chipset temperature (°C)",
|
||||||
|
type: "guage",
|
||||||
|
guage: { min: 0, max: 100 },
|
||||||
|
content: "main"
|
||||||
|
}
|
||||||
|
];
|
Loading…
Reference in a new issue