lint & pre-commit

This commit is contained in:
shamoon 2024-11-24 20:04:26 -08:00
parent 7f8a96a217
commit 753992d390
2 changed files with 86 additions and 71 deletions

View File

@ -1,62 +1,77 @@
import useSWR from "swr"; import useSWR from "swr";
import { FaNetworkWired, FaAngleUp, FaAngleDown } from "react-icons/fa"; import { FaNetworkWired, FaAngleUp, FaAngleDown } from "react-icons/fa";
import { useTranslation } from "next-i18next"; import { useTranslation } from "next-i18next";
import Resource from "../widget/resource"; import Resource from "../widget/resource";
import Error from "../widget/error"; import Error from "../widget/error";
export default function Network({ options, refresh = 1500 }) { export default function Network({ options, refresh = 1500 }) {
const { t } = useTranslation(); const { t } = useTranslation();
const { data, error } = useSWR(`/api/widgets/resources?type=network${(options.network || ( options.network !== 'default' && options.network === `false`)) ? `&interfaceName=${options.network}` : '' }`, { const { data, error } = useSWR(
refreshInterval: refresh, `/api/widgets/resources?type=network${
}); options.network || (options.network !== "default" && options.network === `false`)
? `&interfaceName=${options.network}`
if (error || data?.error) { : ""
return <Error />; }`,
} {
refreshInterval: refresh,
if (!data) { },
return ( );
<Resource
icon={FaNetworkWired} if (error || data?.error) {
value="-" return <Error />;
label={<FaAngleUp/>} }
expandedValue="-"
expandedLabel={<FaAngleDown/>} if (!data) {
percentage="0" return (
expanded="true" <Resource
/> icon={FaNetworkWired}
); value="-"
} label={<FaAngleUp />}
expandedValue="-"
return ( expandedLabel={<FaAngleDown />}
<> percentage="0"
/* Active Usage */ expanded="true"
<Resource />
icon={FaNetworkWired} );
value={t('common.bits', { value: data?.network?.tx_sec })} }
label={<FaAngleUp/>}
expandedValue={t('common.bits', { value: data?.network?.rx_sec })} return (
expandedLabel={<FaAngleDown/>} <>
percentage="0" <Resource
expanded="true" icon={FaNetworkWired}
children={<div className="pt-1 text-theme-800 dark:text-theme-200 text-xs text-center">{t('pyload.speed')}</div>} value={t("common.bits", { value: data?.network?.tx_sec })}
iconChildren={<span class="bg-theme-100 text-theme-800 text-xs font-medium px-1 py-1 mt-1 rounded dark:bg-theme-700 dark:text-theme-300 text-center">{data.interface}</span>} label={<FaAngleUp />}
/> expandedValue={t("common.bits", { value: data?.network?.rx_sec })}
expandedLabel={<FaAngleDown />}
/* Total Usage */ percentage="0"
<Resource expanded="true"
icon={FaNetworkWired} iconChildren={
value={t('common.bbytes', { value: data?.network?.tx_bytes })} <span class="bg-theme-100 text-theme-800 text-xs font-medium px-1 py-1 mt-1 rounded dark:bg-theme-700 dark:text-theme-300 text-center">
label={<FaAngleUp/>} {data.interface}
expandedValue={t('common.bbytes', { value: data?.network?.rx_bytes })} </span>
expandedLabel={<FaAngleDown/>} }
percentage="0" >
expanded="true" <div className="pt-1 text-theme-800 dark:text-theme-200 text-xs text-center">{t("pyload.speed")}</div>
children={<div className="pt-1 text-theme-800 dark:text-theme-200 text-xs text-center">{t('pyload.total')}</div>} </Resource>
iconChildren={<span class="bg-theme-100 text-theme-800 text-xs font-medium px-1 py-1 mt-1 rounded dark:bg-theme-700 dark:text-theme-300 text-center">{data.interface}</span>}
/> <Resource
</> icon={FaNetworkWired}
); value={t("common.bbytes", { value: data?.network?.tx_bytes })}
} label={<FaAngleUp />}
expandedValue={t("common.bbytes", { value: data?.network?.rx_bytes })}
expandedLabel={<FaAngleDown />}
percentage="0"
expanded="true"
iconChildren={
<span class="bg-theme-100 text-theme-800 text-xs font-medium px-1 py-1 mt-1 rounded dark:bg-theme-700 dark:text-theme-300 text-center">
{data.interface}
</span>
}
>
<div className="pt-1 text-theme-800 dark:text-theme-200 text-xs text-center">{t("pyload.total")}</div>
</Resource>
</>
);
}

View File

@ -58,20 +58,20 @@ export default async function handler(req, res) {
}); });
} }
if (type === "network"){ if (type === "network") {
let networkData = await si.networkStats(); let networkData = await si.networkStats();
if(interfaceName !== "default" && interfaceName !== undefined && interfaceName !== "false"){ if (interfaceName !== "default" && interfaceName !== undefined && interfaceName !== "false") {
networkData = networkData.filter((network) => network.iface === interfaceName)['0']; networkData = networkData.filter((network) => network.iface === interfaceName)["0"];
if(!networkData){ if (!networkData) {
return res.status(404).json({ return res.status(404).json({
error: "Interface not found", error: "Interface not found",
}); });
} }
}else{ } else {
const interfaceDefault = await si.networkInterfaceDefault(); const interfaceDefault = await si.networkInterfaceDefault();
interfaceName = interfaceDefault interfaceName = interfaceDefault;
networkData = networkData.filter((network) => network.iface === interfaceDefault)['0']; networkData = networkData.filter((network) => network.iface === interfaceDefault)["0"];
if(!networkData){ if (!networkData) {
return res.status(404).json({ return res.status(404).json({
error: "Interface not found! Please specify a valid interface name.", error: "Interface not found! Please specify a valid interface name.",
}); });
@ -79,7 +79,7 @@ export default async function handler(req, res) {
} }
return res.status(200).json({ return res.status(200).json({
network: networkData, network: networkData,
interface: interfaceName interface: interfaceName,
}); });
} }