Prevent unused glances API class

This commit is contained in:
shamoon 2023-05-22 10:34:06 -07:00
parent 28180f0e81
commit 33b62f94e1
2 changed files with 22 additions and 12 deletions

View File

@ -92,9 +92,13 @@ export default function Widget({ options }) {
} }
const tempPercent = Math.round((mainTemp / maxTemp) * 100); const tempPercent = Math.round((mainTemp / maxTemp) * 100);
const disks = Array.isArray(options.disk) let disks = [];
? options.disk.map((disk) => data.fs.find((d) => d.mnt_point === disk)).filter((d) => d)
: [data.fs.find((d) => d.mnt_point === options.disk)].filter((d) => d); if (options.disk) {
disks = Array.isArray(options.disk)
? options.disk.map((disk) => data.fs.find((d) => d.mnt_point === disk)).filter((d) => d)
: [data.fs.find((d) => d.mnt_point === options.disk)].filter((d) => d);
}
return ( return (
<a href={options.url} target={settings.target ?? "_blank"} className="flex flex-col max-w:full sm:basis-auto self-center grow-0 flex-wrap"> <a href={options.url} target={settings.target ?? "_blank"} className="flex flex-col max-w:full sm:basis-auto self-center grow-0 flex-wrap">
@ -157,7 +161,7 @@ export default function Widget({ options }) {
<UsageBar percent={data.mem.percent} /> <UsageBar percent={data.mem.percent} />
</div> </div>
</div> </div>
{options.disk && disks.map((disk) => ( {disks.map((disk) => (
<div key={disk.mnt_point} className="flex-none flex flex-row items-center mr-3 py-1.5"> <div key={disk.mnt_point} className="flex-none flex flex-row items-center mr-3 py-1.5">
<FiHardDrive className="text-theme-800 dark:text-theme-200 w-5 h-5" /> <FiHardDrive className="text-theme-800 dark:text-theme-200 w-5 h-5" />
<div className="flex flex-col ml-3 text-left min-w-[85px]"> <div className="flex flex-col ml-3 text-left min-w-[85px]">

View File

@ -40,25 +40,31 @@ async function retrieveFromGlancesAPI(privateWidgetOptions, endpoint) {
} }
export default async function handler(req, res) { export default async function handler(req, res) {
const { index } = req.query; const { index, cputemp: includeCpuTemp, uptime: includeUptime, disk: includeDisks } = req.query;
const privateWidgetOptions = await getPrivateWidgetOptions("glances", index); const privateWidgetOptions = await getPrivateWidgetOptions("glances", index);
try { try {
const cpuData = await retrieveFromGlancesAPI(privateWidgetOptions, "cpu"); const cpuData = await retrieveFromGlancesAPI(privateWidgetOptions, "cpu");
const loadData = await retrieveFromGlancesAPI(privateWidgetOptions, "load"); const loadData = await retrieveFromGlancesAPI(privateWidgetOptions, "load");
const uptimeData = await retrieveFromGlancesAPI(privateWidgetOptions, "uptime");
const sensorData = await retrieveFromGlancesAPI(privateWidgetOptions, "sensors");
const memoryData = await retrieveFromGlancesAPI(privateWidgetOptions, "mem"); const memoryData = await retrieveFromGlancesAPI(privateWidgetOptions, "mem");
const filesystemData = await retrieveFromGlancesAPI(privateWidgetOptions, "fs");
const data = { const data = {
cpu: cpuData, cpu: cpuData,
load: loadData, load: loadData,
uptime: uptimeData,
sensors: sensorData,
mem: memoryData, mem: memoryData,
fs: filesystemData, }
// Disabled by default, dont call unless needed
if (includeUptime) {
data.uptime = await retrieveFromGlancesAPI(privateWidgetOptions, "uptime");
}
if (includeCpuTemp) {
data.sensors = await retrieveFromGlancesAPI(privateWidgetOptions, "sensors");
}
if (includeDisks) {
data.fs = await retrieveFromGlancesAPI(privateWidgetOptions, "fs");
} }
return res.status(200).send(data); return res.status(200).send(data);